TrackedEntityMapping.cs 913 B

12345678910111213141516171819202122232425262728293031
  1. using GreenTree.Strohrmann.ERP.Core.Domain.Shared;
  2. using Microsoft.EntityFrameworkCore;
  3. using Microsoft.EntityFrameworkCore.Metadata.Builders;
  4. using System;
  5. using System.Collections.Generic;
  6. using System.Text;
  7. namespace GreenTree.Strohrmann.ERP.Domain.Model.Shared
  8. {
  9. public class TrackedEntityMapping<TEntity> : IEntityTypeConfiguration<TEntity>
  10. where TEntity : TrackedEntity
  11. {
  12. public virtual void Configure(EntityTypeBuilder<TEntity> builder)
  13. {
  14. builder.Property(t => t.CreatedOn)
  15. .IsRequired();
  16. builder.Property(t => t.CreatedBy)
  17. .IsRequired();
  18. builder.Property(t => t.ChangedOn)
  19. .IsRequired(false);
  20. builder.Property(t => t.ChangedBy)
  21. .IsRequired(false);
  22. builder.Property(t => t.CreationStatus)
  23. .IsRequired(false);
  24. }
  25. }
  26. }