//
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using UserManagement.Domain;
namespace UserManagement.Domain.Migrations
{
[DbContext(typeof(UserContext))]
[Migration("20210514142626_Initial_SQL_Data_Script")]
partial class Initial_SQL_Data_Script
{
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("Relational:MaxIdentifierLength", 128)
.HasAnnotation("ProductVersion", "5.0.4")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
modelBuilder.Entity("UserManagement.Data.Action", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property("CreatedBy")
.HasColumnType("uniqueidentifier");
b.Property("CreatedDate")
.HasColumnType("datetime2");
b.Property("DeletedBy")
.HasColumnType("uniqueidentifier");
b.Property("DeletedDate")
.HasColumnType("datetime2");
b.Property("IsDeleted")
.HasColumnType("bit");
b.Property("ModifiedBy")
.HasColumnType("uniqueidentifier");
b.Property("ModifiedDate")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasDefaultValueSql("getdate()");
b.Property("Name")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("CreatedBy");
b.HasIndex("DeletedBy");
b.HasIndex("ModifiedBy");
b.ToTable("Actions");
});
modelBuilder.Entity("UserManagement.Data.AppSetting", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property("CreatedBy")
.HasColumnType("uniqueidentifier");
b.Property("CreatedDate")
.HasColumnType("datetime2");
b.Property("DeletedBy")
.HasColumnType("uniqueidentifier");
b.Property("DeletedDate")
.HasColumnType("datetime2");
b.Property("IsDeleted")
.HasColumnType("bit");
b.Property("Key")
.HasColumnType("nvarchar(max)");
b.Property("ModifiedBy")
.HasColumnType("uniqueidentifier");
b.Property("ModifiedDate")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasDefaultValueSql("getdate()");
b.Property("Name")
.HasColumnType("nvarchar(max)");
b.Property("Value")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.ToTable("AppSettings");
});
modelBuilder.Entity("UserManagement.Data.EmailSMTPSetting", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property("CreatedBy")
.HasColumnType("uniqueidentifier");
b.Property("CreatedDate")
.HasColumnType("datetime2");
b.Property("DeletedBy")
.HasColumnType("uniqueidentifier");
b.Property("DeletedDate")
.HasColumnType("datetime2");
b.Property("Host")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property("IsDefault")
.HasColumnType("bit");
b.Property("IsDeleted")
.HasColumnType("bit");
b.Property("IsEnableSSL")
.HasColumnType("bit");
b.Property("ModifiedBy")
.HasColumnType("uniqueidentifier");
b.Property("ModifiedDate")
.HasColumnType("datetime2");
b.Property("Password")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property("Port")
.HasColumnType("int");
b.Property("UserName")
.IsRequired()
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("CreatedBy");
b.HasIndex("DeletedBy");
b.HasIndex("ModifiedBy");
b.ToTable("EmailSMTPSettings");
});
modelBuilder.Entity("UserManagement.Data.EmailTemplate", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property("Body")
.HasColumnType("nvarchar(max)");
b.Property("CreatedBy")
.HasColumnType("uniqueidentifier");
b.Property("CreatedDate")
.HasColumnType("datetime2");
b.Property("DeletedBy")
.HasColumnType("uniqueidentifier");
b.Property("DeletedDate")
.HasColumnType("datetime2");
b.Property("IsDeleted")
.HasColumnType("bit");
b.Property("ModifiedBy")
.HasColumnType("uniqueidentifier");
b.Property("ModifiedDate")
.HasColumnType("datetime2");
b.Property("Name")
.HasColumnType("nvarchar(max)");
b.Property("Subject")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.ToTable("EmailTemplates");
});
modelBuilder.Entity("UserManagement.Data.LoginAudit", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property("Latitude")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property("LoginTime")
.HasColumnType("datetime2");
b.Property("Longitude")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property("Provider")
.HasColumnType("nvarchar(max)");
b.Property("RemoteIP")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property("Status")
.HasColumnType("nvarchar(max)");
b.Property("UserName")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.ToTable("LoginAudits");
});
modelBuilder.Entity("UserManagement.Data.NLog", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property("Callsite")
.HasColumnType("nvarchar(max)");
b.Property("Exception")
.HasColumnType("nvarchar(max)");
b.Property("Level")
.HasColumnType("nvarchar(max)");
b.Property("Logged")
.HasColumnType("datetime2");
b.Property("Logger")
.HasColumnType("nvarchar(max)");
b.Property("MachineName")
.HasColumnType("nvarchar(max)");
b.Property("Message")
.HasColumnType("nvarchar(max)");
b.Property("Properties")
.HasColumnType("nvarchar(max)");
b.Property("Source")
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.HasKey("Id");
b.ToTable("NLog");
});
modelBuilder.Entity("UserManagement.Data.Page", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property("CreatedBy")
.HasColumnType("uniqueidentifier");
b.Property("CreatedDate")
.HasColumnType("datetime2");
b.Property("DeletedBy")
.HasColumnType("uniqueidentifier");
b.Property("DeletedDate")
.HasColumnType("datetime2");
b.Property("IsDeleted")
.HasColumnType("bit");
b.Property("ModifiedBy")
.HasColumnType("uniqueidentifier");
b.Property("ModifiedDate")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasDefaultValueSql("getdate()");
b.Property("Name")
.HasColumnType("nvarchar(max)");
b.Property("Url")
.HasColumnType("nvarchar(max)");
b.HasKey("Id");
b.HasIndex("CreatedBy");
b.HasIndex("DeletedBy");
b.HasIndex("ModifiedBy");
b.ToTable("Pages");
});
modelBuilder.Entity("UserManagement.Data.PageAction", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property("ActionId")
.HasColumnType("uniqueidentifier");
b.Property("CreatedBy")
.HasColumnType("uniqueidentifier");
b.Property("CreatedDate")
.HasColumnType("datetime2");
b.Property("DeletedBy")
.HasColumnType("uniqueidentifier");
b.Property("DeletedDate")
.HasColumnType("datetime2");
b.Property("IsDeleted")
.HasColumnType("bit");
b.Property("ModifiedBy")
.HasColumnType("uniqueidentifier");
b.Property("ModifiedDate")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasDefaultValueSql("getdate()");
b.Property("PageId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("ActionId");
b.HasIndex("CreatedBy");
b.HasIndex("DeletedBy");
b.HasIndex("ModifiedBy");
b.HasIndex("PageId");
b.ToTable("PageActions");
});
modelBuilder.Entity("UserManagement.Data.Role", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property("ConcurrencyStamp")
.IsConcurrencyToken()
.HasColumnType("nvarchar(max)");
b.Property("CreatedBy")
.HasColumnType("uniqueidentifier");
b.Property("CreatedDate")
.HasColumnType("datetime2");
b.Property("DeletedBy")
.HasColumnType("uniqueidentifier");
b.Property("DeletedDate")
.HasColumnType("datetime2");
b.Property("IsDeleted")
.HasColumnType("bit");
b.Property("ModifiedBy")
.HasColumnType("uniqueidentifier");
b.Property("ModifiedDate")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasDefaultValueSql("getdate()");
b.Property("Name")
.HasMaxLength(256)
.HasColumnType("nvarchar(256)");
b.Property("NormalizedName")
.HasMaxLength(256)
.HasColumnType("nvarchar(256)");
b.HasKey("Id");
b.HasIndex("CreatedBy");
b.HasIndex("DeletedBy");
b.HasIndex("ModifiedBy");
b.HasIndex("NormalizedName")
.IsUnique()
.HasDatabaseName("RoleNameIndex")
.HasFilter("[NormalizedName] IS NOT NULL");
b.ToTable("Roles");
});
modelBuilder.Entity("UserManagement.Data.RoleClaim", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property("ActionId")
.HasColumnType("uniqueidentifier");
b.Property("ClaimType")
.HasColumnType("nvarchar(max)");
b.Property("ClaimValue")
.HasColumnType("nvarchar(max)");
b.Property("PageId")
.HasColumnType("uniqueidentifier");
b.Property("RoleId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("ActionId");
b.HasIndex("PageId");
b.HasIndex("RoleId");
b.ToTable("RoleClaims");
});
modelBuilder.Entity("UserManagement.Data.User", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("uniqueidentifier");
b.Property("AccessFailedCount")
.HasColumnType("int");
b.Property("Address")
.HasColumnType("nvarchar(max)");
b.Property("ConcurrencyStamp")
.IsConcurrencyToken()
.HasColumnType("nvarchar(max)");
b.Property("CreatedBy")
.HasColumnType("uniqueidentifier");
b.Property("CreatedDate")
.HasColumnType("datetime2");
b.Property("DeletedBy")
.HasColumnType("uniqueidentifier");
b.Property("DeletedDate")
.HasColumnType("datetime2");
b.Property("Email")
.HasMaxLength(256)
.HasColumnType("nvarchar(256)");
b.Property("EmailConfirmed")
.HasColumnType("bit");
b.Property("FirstName")
.HasColumnType("nvarchar(max)");
b.Property("IsActive")
.HasColumnType("bit");
b.Property("IsDeleted")
.HasColumnType("bit");
b.Property("LastName")
.HasColumnType("nvarchar(max)");
b.Property("LockoutEnabled")
.HasColumnType("bit");
b.Property("LockoutEnd")
.HasColumnType("datetimeoffset");
b.Property("ModifiedBy")
.HasColumnType("uniqueidentifier");
b.Property("ModifiedDate")
.ValueGeneratedOnAdd()
.HasColumnType("datetime2")
.HasDefaultValueSql("getdate()");
b.Property("NormalizedEmail")
.HasMaxLength(256)
.HasColumnType("nvarchar(256)");
b.Property("NormalizedUserName")
.HasMaxLength(256)
.HasColumnType("nvarchar(256)");
b.Property("PasswordHash")
.HasColumnType("nvarchar(max)");
b.Property("PhoneNumber")
.HasColumnType("nvarchar(max)");
b.Property("PhoneNumberConfirmed")
.HasColumnType("bit");
b.Property("ProfilePhoto")
.HasColumnType("nvarchar(max)");
b.Property("Provider")
.HasColumnType("nvarchar(max)");
b.Property("SecurityStamp")
.HasColumnType("nvarchar(max)");
b.Property("TwoFactorEnabled")
.HasColumnType("bit");
b.Property("UserName")
.HasMaxLength(256)
.HasColumnType("nvarchar(256)");
b.HasKey("Id");
b.HasIndex("NormalizedEmail")
.HasDatabaseName("EmailIndex");
b.HasIndex("NormalizedUserName")
.IsUnique()
.HasDatabaseName("UserNameIndex")
.HasFilter("[NormalizedUserName] IS NOT NULL");
b.ToTable("Users");
});
modelBuilder.Entity("UserManagement.Data.UserAllowedIP", b =>
{
b.Property("UserId")
.HasColumnType("uniqueidentifier");
b.Property("IPAddress")
.HasColumnType("nvarchar(450)");
b.HasKey("UserId", "IPAddress");
b.ToTable("UserAllowedIPs");
});
modelBuilder.Entity("UserManagement.Data.UserClaim", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property("ActionId")
.HasColumnType("uniqueidentifier");
b.Property("ClaimType")
.HasColumnType("nvarchar(max)");
b.Property("ClaimValue")
.HasColumnType("nvarchar(max)");
b.Property("PageId")
.HasColumnType("uniqueidentifier");
b.Property("UserId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("ActionId");
b.HasIndex("PageId");
b.HasIndex("UserId");
b.ToTable("UserClaims");
});
modelBuilder.Entity("UserManagement.Data.UserLogin", b =>
{
b.Property("LoginProvider")
.HasColumnType("nvarchar(450)");
b.Property("ProviderKey")
.HasColumnType("nvarchar(450)");
b.Property("ProviderDisplayName")
.HasColumnType("nvarchar(max)");
b.Property("UserId")
.HasColumnType("uniqueidentifier");
b.HasKey("LoginProvider", "ProviderKey");
b.HasIndex("UserId");
b.ToTable("UserLogins");
});
modelBuilder.Entity("UserManagement.Data.UserRole", b =>
{
b.Property("UserId")
.HasColumnType("uniqueidentifier");
b.Property("RoleId")
.HasColumnType("uniqueidentifier");
b.HasKey("UserId", "RoleId");
b.HasIndex("RoleId");
b.ToTable("UserRoles");
});
modelBuilder.Entity("UserManagement.Data.UserToken", b =>
{
b.Property("UserId")
.HasColumnType("uniqueidentifier");
b.Property("LoginProvider")
.HasColumnType("nvarchar(450)");
b.Property("Name")
.HasColumnType("nvarchar(450)");
b.Property("Value")
.HasColumnType("nvarchar(max)");
b.HasKey("UserId", "LoginProvider", "Name");
b.ToTable("UserTokens");
});
modelBuilder.Entity("UserManagement.Data.Action", b =>
{
b.HasOne("UserManagement.Data.User", "CreatedByUser")
.WithMany()
.HasForeignKey("CreatedBy")
.OnDelete(DeleteBehavior.NoAction)
.IsRequired();
b.HasOne("UserManagement.Data.User", "DeletedByUser")
.WithMany()
.HasForeignKey("DeletedBy")
.OnDelete(DeleteBehavior.NoAction);
b.HasOne("UserManagement.Data.User", "ModifiedByUser")
.WithMany()
.HasForeignKey("ModifiedBy")
.OnDelete(DeleteBehavior.NoAction)
.IsRequired();
b.Navigation("CreatedByUser");
b.Navigation("DeletedByUser");
b.Navigation("ModifiedByUser");
});
modelBuilder.Entity("UserManagement.Data.EmailSMTPSetting", b =>
{
b.HasOne("UserManagement.Data.User", "CreatedByUser")
.WithMany()
.HasForeignKey("CreatedBy")
.OnDelete(DeleteBehavior.NoAction)
.IsRequired();
b.HasOne("UserManagement.Data.User", "DeletedByUser")
.WithMany()
.HasForeignKey("DeletedBy")
.OnDelete(DeleteBehavior.NoAction);
b.HasOne("UserManagement.Data.User", "ModifiedByUser")
.WithMany()
.HasForeignKey("ModifiedBy")
.OnDelete(DeleteBehavior.NoAction)
.IsRequired();
b.Navigation("CreatedByUser");
b.Navigation("DeletedByUser");
b.Navigation("ModifiedByUser");
});
modelBuilder.Entity("UserManagement.Data.Page", b =>
{
b.HasOne("UserManagement.Data.User", "CreatedByUser")
.WithMany()
.HasForeignKey("CreatedBy")
.OnDelete(DeleteBehavior.NoAction)
.IsRequired();
b.HasOne("UserManagement.Data.User", "DeletedByUser")
.WithMany()
.HasForeignKey("DeletedBy")
.OnDelete(DeleteBehavior.NoAction);
b.HasOne("UserManagement.Data.User", "ModifiedByUser")
.WithMany()
.HasForeignKey("ModifiedBy")
.OnDelete(DeleteBehavior.NoAction)
.IsRequired();
b.Navigation("CreatedByUser");
b.Navigation("DeletedByUser");
b.Navigation("ModifiedByUser");
});
modelBuilder.Entity("UserManagement.Data.PageAction", b =>
{
b.HasOne("UserManagement.Data.Action", "Action")
.WithMany()
.HasForeignKey("ActionId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("UserManagement.Data.User", "CreatedByUser")
.WithMany()
.HasForeignKey("CreatedBy")
.OnDelete(DeleteBehavior.NoAction)
.IsRequired();
b.HasOne("UserManagement.Data.User", "DeletedByUser")
.WithMany()
.HasForeignKey("DeletedBy")
.OnDelete(DeleteBehavior.NoAction);
b.HasOne("UserManagement.Data.User", "ModifiedByUser")
.WithMany()
.HasForeignKey("ModifiedBy")
.OnDelete(DeleteBehavior.NoAction)
.IsRequired();
b.HasOne("UserManagement.Data.Page", "Page")
.WithMany()
.HasForeignKey("PageId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Action");
b.Navigation("CreatedByUser");
b.Navigation("DeletedByUser");
b.Navigation("ModifiedByUser");
b.Navigation("Page");
});
modelBuilder.Entity("UserManagement.Data.Role", b =>
{
b.HasOne("UserManagement.Data.User", "CreatedByUser")
.WithMany()
.HasForeignKey("CreatedBy")
.OnDelete(DeleteBehavior.NoAction);
b.HasOne("UserManagement.Data.User", "DeletedByUser")
.WithMany()
.HasForeignKey("DeletedBy")
.OnDelete(DeleteBehavior.NoAction);
b.HasOne("UserManagement.Data.User", "ModifiedByUser")
.WithMany()
.HasForeignKey("ModifiedBy")
.OnDelete(DeleteBehavior.NoAction)
.IsRequired();
b.Navigation("CreatedByUser");
b.Navigation("DeletedByUser");
b.Navigation("ModifiedByUser");
});
modelBuilder.Entity("UserManagement.Data.RoleClaim", b =>
{
b.HasOne("UserManagement.Data.Action", "Action")
.WithMany()
.HasForeignKey("ActionId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("UserManagement.Data.Page", "Page")
.WithMany()
.HasForeignKey("PageId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("UserManagement.Data.Role", "Role")
.WithMany("RoleClaims")
.HasForeignKey("RoleId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Action");
b.Navigation("Page");
b.Navigation("Role");
});
modelBuilder.Entity("UserManagement.Data.UserAllowedIP", b =>
{
b.HasOne("UserManagement.Data.User", "User")
.WithMany("UserAllowedIPs")
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("User");
});
modelBuilder.Entity("UserManagement.Data.UserClaim", b =>
{
b.HasOne("UserManagement.Data.Action", "Action")
.WithMany()
.HasForeignKey("ActionId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("UserManagement.Data.Page", "Page")
.WithMany()
.HasForeignKey("PageId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("UserManagement.Data.User", "User")
.WithMany("UserClaims")
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Action");
b.Navigation("Page");
b.Navigation("User");
});
modelBuilder.Entity("UserManagement.Data.UserLogin", b =>
{
b.HasOne("UserManagement.Data.User", "User")
.WithMany("UserLogins")
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("User");
});
modelBuilder.Entity("UserManagement.Data.UserRole", b =>
{
b.HasOne("UserManagement.Data.Role", "Role")
.WithMany("UserRoles")
.HasForeignKey("RoleId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("UserManagement.Data.User", "User")
.WithMany("UserRoles")
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Role");
b.Navigation("User");
});
modelBuilder.Entity("UserManagement.Data.UserToken", b =>
{
b.HasOne("UserManagement.Data.User", "User")
.WithMany("UserTokens")
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("User");
});
modelBuilder.Entity("UserManagement.Data.Role", b =>
{
b.Navigation("RoleClaims");
b.Navigation("UserRoles");
});
modelBuilder.Entity("UserManagement.Data.User", b =>
{
b.Navigation("UserAllowedIPs");
b.Navigation("UserClaims");
b.Navigation("UserLogins");
b.Navigation("UserRoles");
b.Navigation("UserTokens");
});
#pragma warning restore 612, 618
}
}
}