// using System; using CellularManagement.Infrastructure.Context; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; #nullable disable namespace CellularManagement.Infrastructure.Migrations { [DbContext(typeof(AppDbContext))] partial class AppDbContextModelSnapshot : ModelSnapshot { protected override void BuildModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("ProductVersion", "8.0.0") .HasAnnotation("Relational:MaxIdentifierLength", 63); NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); modelBuilder.Entity("CellularManagement.Domain.Entities.AppRole", b => { b.Property("Id") .HasColumnType("text") .HasComment("角色ID,主键"); b.Property("ConcurrencyStamp") .IsConcurrencyToken() .HasColumnType("text") .HasComment("并发控制戳"); b.Property("Name") .IsRequired() .HasMaxLength(256) .HasColumnType("character varying(256)") .HasComment("角色名称"); b.Property("NormalizedName") .IsRequired() .HasMaxLength(256) .HasColumnType("character varying(256)") .HasComment("标准化角色名称(大写)"); b.HasKey("Id"); b.HasIndex("Name") .IsUnique() .HasDatabaseName("IX_Roles_Name"); b.HasIndex("NormalizedName") .IsUnique() .HasDatabaseName("RoleNameIndex"); b.ToTable("Roles", null, t => { t.HasComment("角色表"); }); }); modelBuilder.Entity("CellularManagement.Domain.Entities.AppUser", b => { b.Property("Id") .HasColumnType("text") .HasComment("用户ID,主键"); b.Property("AccessFailedCount") .HasColumnType("integer") .HasComment("登录失败次数"); b.Property("ConcurrencyStamp") .IsConcurrencyToken() .HasColumnType("text") .HasComment("并发控制戳"); b.Property("Email") .IsRequired() .HasMaxLength(256) .HasColumnType("character varying(256)") .HasComment("电子邮箱"); b.Property("EmailConfirmed") .HasColumnType("boolean") .HasComment("邮箱是否已验证"); b.Property("LockoutEnabled") .HasColumnType("boolean") .HasComment("是否启用账户锁定"); b.Property("LockoutEnd") .HasColumnType("timestamp with time zone") .HasComment("账户锁定结束时间"); b.Property("NormalizedEmail") .HasMaxLength(256) .HasColumnType("character varying(256)") .HasComment("标准化电子邮箱(大写)"); b.Property("NormalizedUserName") .HasMaxLength(256) .HasColumnType("character varying(256)") .HasComment("标准化用户名(大写)"); b.Property("PasswordHash") .HasColumnType("text") .HasComment("密码哈希值"); b.Property("PhoneNumber") .IsRequired() .HasColumnType("text") .HasComment("电话号码"); b.Property("PhoneNumberConfirmed") .HasColumnType("boolean") .HasComment("电话号码是否已验证"); b.Property("SecurityStamp") .HasColumnType("text") .HasComment("安全戳,用于并发控制"); b.Property("TwoFactorEnabled") .HasColumnType("boolean") .HasComment("是否启用双因素认证"); b.Property("UserName") .IsRequired() .HasMaxLength(256) .HasColumnType("character varying(256)") .HasComment("用户名"); b.HasKey("Id"); b.HasIndex("Email") .IsUnique() .HasDatabaseName("IX_Users_Email"); b.HasIndex("NormalizedEmail") .HasDatabaseName("EmailIndex"); b.HasIndex("NormalizedUserName") .IsUnique() .HasDatabaseName("UserNameIndex"); b.HasIndex("PhoneNumber") .IsUnique() .HasDatabaseName("IX_Users_PhoneNumber"); b.HasIndex("UserName") .IsUnique() .HasDatabaseName("IX_Users_UserName"); b.ToTable("Users", null, t => { t.HasComment("用户表"); }); }); #pragma warning restore 612, 618 } } }