UserDm.cs 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. using Microsoft.EntityFrameworkCore;
  2. using Quadarax.Application.QLiberace.Common.Entities.Base.DaoMapper;
  3. namespace Quadarax.Application.QLiberace.Base.Entities.DaoMapper
  4. {
  5. public class UserDm : TrackedDm<User>
  6. {
  7. public override void Map(ModelBuilder builder)
  8. {
  9. if (builder == null) throw new ArgumentNullException(nameof(builder));
  10. base.Map(builder);
  11. builder.Entity<User>(entity =>
  12. {
  13. entity.ToTable(Constants.Modules.Base.TblUser, Constants.Modules.Base.Schema);
  14. // indexes
  15. entity.HasIndex(e => e.LoginName, "IDX_TENANT_CODE")
  16. .IsUnique();
  17. // columns
  18. entity.Property(e => e.IsLocked).IsRequired()
  19. .HasDefaultValueSql("0")
  20. .HasComment("Flag if user access locked (not accessible)");
  21. entity.Property(e => e.LoginName).IsRequired()
  22. .HasMaxLength(100)
  23. .HasComment("User login name name. Key search value");
  24. }
  25. );
  26. }
  27. }
  28. }