//
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using RMuseum.DbContext;
namespace RMuseum.Migrations
{
[DbContext(typeof(RMuseumDbContext))]
[Migration("20190909123824_UserNotes")]
partial class UserNotes
{
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("ProductVersion", "2.2.4-servicing-10062")
.HasAnnotation("Relational:MaxIdentifierLength", 128)
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property("ClaimType");
b.Property("ClaimValue");
b.Property("RoleId");
b.HasKey("Id");
b.HasIndex("RoleId");
b.ToTable("AspNetRoleClaims");
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn);
b.Property("ClaimType");
b.Property("ClaimValue");
b.Property("UserId");
b.HasKey("Id");
b.HasIndex("UserId");
b.ToTable("AspNetUserClaims");
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b =>
{
b.Property("LoginProvider");
b.Property("ProviderKey");
b.Property("ProviderDisplayName");
b.Property("UserId");
b.HasKey("LoginProvider", "ProviderKey");
b.HasIndex("UserId");
b.ToTable("AspNetUserLogins");
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b =>
{
b.Property("UserId");
b.Property("RoleId");
b.HasKey("UserId", "RoleId");
b.HasIndex("RoleId");
b.ToTable("AspNetUserRoles");
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b =>
{
b.Property("UserId");
b.Property("LoginProvider");
b.Property("Name");
b.Property("Value");
b.HasKey("UserId", "LoginProvider", "Name");
b.ToTable("AspNetUserTokens");
});
modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactItemRecord", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("CoverImageIndex");
b.Property("Description");
b.Property("DescriptionInEnglish");
b.Property("FriendlyUrl");
b.Property("LastModified");
b.Property("Name");
b.Property("NameInEnglish");
b.Property("Order");
b.Property("RArtifactMasterRecordId");
b.HasKey("Id");
b.HasIndex("RArtifactMasterRecordId", "FriendlyUrl")
.IsUnique()
.HasFilter("[FriendlyUrl] IS NOT NULL");
b.HasIndex("RArtifactMasterRecordId", "Order")
.IsUnique();
b.ToTable("Items");
});
modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactMasterRecord", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("CoverImageId");
b.Property("CoverItemIndex");
b.Property("DateTime");
b.Property("Description");
b.Property("DescriptionInEnglish");
b.Property("FriendlyUrl");
b.Property("ItemCount");
b.Property("LastModified");
b.Property("Name");
b.Property("NameInEnglish");
b.Property("Status");
b.HasKey("Id");
b.HasIndex("CoverImageId");
b.HasIndex("FriendlyUrl")
.IsUnique()
.HasFilter("[FriendlyUrl] IS NOT NULL");
b.ToTable("Artifacts");
});
modelBuilder.Entity("RMuseum.Models.Artifact.RTag", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("FriendlyUrl");
b.Property("GlobalValue");
b.Property("Name");
b.Property("NameInEnglish");
b.Property("Order");
b.Property("PluralName");
b.Property("PluralNameInEnglish");
b.Property("Status");
b.Property("TagType");
b.HasKey("Id");
b.HasIndex("FriendlyUrl");
b.ToTable("Tags");
});
modelBuilder.Entity("RMuseum.Models.Artifact.RTagValue", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("FriendlyUrl");
b.Property("Order");
b.Property("RArtifactItemRecordId");
b.Property("RArtifactMasterRecordId");
b.Property("RTagId");
b.Property("Status");
b.Property("Value");
b.Property("ValueInEnglish");
b.Property("ValueSupplement");
b.HasKey("Id");
b.HasIndex("FriendlyUrl");
b.HasIndex("RArtifactItemRecordId");
b.HasIndex("RArtifactMasterRecordId");
b.HasIndex("RTagId");
b.ToTable("TagValues");
});
modelBuilder.Entity("RMuseum.Models.Bookmark.RUserBookmark", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("DateTime");
b.Property("Note");
b.Property("RAppUserId");
b.Property("RArtifactItemRecordId");
b.Property("RArtifactMasterRecordId");
b.Property("RBookmarkType");
b.HasKey("Id");
b.HasIndex("RAppUserId");
b.HasIndex("RArtifactItemRecordId");
b.HasIndex("RArtifactMasterRecordId");
b.ToTable("UserBookmarks");
});
modelBuilder.Entity("RMuseum.Models.ImportJob.ImportJob", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("ArtifactId");
b.Property("EndTime");
b.Property("Exception");
b.Property("FriendlyUrl");
b.Property("JobType");
b.Property("ProgressPercent");
b.Property("QueueTime");
b.Property("ResourceNumber");
b.Property("SrcContent");
b.Property("SrcUrl");
b.Property("StartTime");
b.Property("Status");
b.HasKey("Id");
b.HasIndex("ArtifactId");
b.ToTable("ImportJobs");
});
modelBuilder.Entity("RMuseum.Models.Note.RUserNote", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("DateTime");
b.Property("HtmlContent");
b.Property("LastModified");
b.Property("Modified");
b.Property("NoteType");
b.Property("RAppUserId");
b.Property("RArtifactItemRecordId");
b.Property("RArtifactMasterRecordId");
b.Property("ReferenceNoteId");
b.Property("Status");
b.HasKey("Id");
b.HasIndex("RAppUserId");
b.HasIndex("RArtifactItemRecordId");
b.HasIndex("RArtifactMasterRecordId");
b.HasIndex("ReferenceNoteId");
b.ToTable("UserNotes");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppRole", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("ConcurrencyStamp")
.IsConcurrencyToken();
b.Property("Description");
b.Property("Name")
.HasMaxLength(256);
b.Property("NormalizedName")
.HasMaxLength(256);
b.HasKey("Id");
b.HasIndex("NormalizedName")
.IsUnique()
.HasName("RoleNameIndex")
.HasFilter("[NormalizedName] IS NOT NULL");
b.ToTable("AspNetRoles");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppUser", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("AccessFailedCount");
b.Property("ConcurrencyStamp")
.IsConcurrencyToken();
b.Property("CreateDate");
b.Property("Email")
.HasMaxLength(256);
b.Property("EmailConfirmed");
b.Property("FirstName");
b.Property("LockoutEnabled");
b.Property("LockoutEnd");
b.Property("NormalizedEmail")
.HasMaxLength(256);
b.Property("NormalizedUserName")
.HasMaxLength(256);
b.Property("PasswordHash");
b.Property("PhoneNumber");
b.Property("PhoneNumberConfirmed");
b.Property("RImageId");
b.Property("SecurityStamp");
b.Property("Status");
b.Property("SureName");
b.Property("TwoFactorEnabled");
b.Property("UserName")
.HasMaxLength(256);
b.HasKey("Id");
b.HasIndex("NormalizedEmail")
.HasName("EmailIndex");
b.HasIndex("NormalizedUserName")
.IsUnique()
.HasName("UserNameIndex")
.HasFilter("[NormalizedUserName] IS NOT NULL");
b.HasIndex("RImageId");
b.ToTable("AspNetUsers");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RCaptchaImage", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("DateTime");
b.Property("RImageId");
b.Property("Value");
b.HasKey("Id");
b.HasIndex("RImageId");
b.ToTable("CaptchaImages");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RPermission", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("OperationShortName");
b.Property("RAppRoleId");
b.Property("SecurableItemShortName");
b.HasKey("Id");
b.HasIndex("RAppRoleId");
b.ToTable("Permissions");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RTemporaryUserSession", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("ClientAppName");
b.Property("ClientIPAddress");
b.Property("Language");
b.Property("LastRenewal");
b.Property("LoginTime");
b.Property("RAppUserId");
b.Property("Token");
b.Property("ValidUntil");
b.HasKey("Id");
b.HasIndex("RAppUserId");
b.ToTable("Sessions");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RVerifyQueueItem", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("ClientAppName");
b.Property("ClientIPAddress");
b.Property("DateTime");
b.Property("Email");
b.Property("Language");
b.Property("PhoneNumber");
b.Property("QueueType");
b.Property("Secret");
b.HasKey("Id");
b.HasIndex("Secret")
.IsUnique()
.HasFilter("[Secret] IS NOT NULL");
b.ToTable("VerifyQueueItems");
});
modelBuilder.Entity("RSecurityBackend.Models.Image.RImage", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd();
b.Property("ContentType");
b.Property("DataTime");
b.Property("Discriminator")
.IsRequired();
b.Property("FileSizeInBytes");
b.Property("FolderName");
b.Property("ImageHeight");
b.Property("ImageWidth");
b.Property("LastModified");
b.Property("OriginalFileName");
b.Property("StoredFileName");
b.HasKey("Id");
b.ToTable("GeneralImages");
b.HasDiscriminator("Discriminator").HasValue("RImage");
});
modelBuilder.Entity("RMuseum.Models.Artifact.RPictureFile", b =>
{
b.HasBaseType("RSecurityBackend.Models.Image.RImage");
b.Property("Description");
b.Property("DescriptionInEnglish");
b.Property("LastModifiedMeta");
b.Property("NormalSizeImageHeight");
b.Property("NormalSizeImageStoredFileName");
b.Property("NormalSizeImageWidth");
b.Property("Order");
b.Property("RArtifactItemRecordId");
b.Property("SrcUrl");
b.Property("Status");
b.Property("ThumbnailImageHeight");
b.Property("ThumbnailImageStoredFileName");
b.Property("ThumbnailImageWidth");
b.Property("Title");
b.Property("TitleInEnglish");
b.HasIndex("RArtifactItemRecordId");
b.HasDiscriminator().HasValue("RPictureFile");
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole")
.WithMany()
.HasForeignKey("RoleId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser")
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser")
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole")
.WithMany()
.HasForeignKey("RoleId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser")
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser")
.WithMany()
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactItemRecord", b =>
{
b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord")
.WithMany("Items")
.HasForeignKey("RArtifactMasterRecordId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactMasterRecord", b =>
{
b.HasOne("RMuseum.Models.Artifact.RPictureFile", "CoverImage")
.WithMany()
.HasForeignKey("CoverImageId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("RMuseum.Models.Artifact.RTagValue", b =>
{
b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord")
.WithMany("Tags")
.HasForeignKey("RArtifactItemRecordId");
b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord")
.WithMany("Tags")
.HasForeignKey("RArtifactMasterRecordId");
b.HasOne("RMuseum.Models.Artifact.RTag", "RTag")
.WithMany()
.HasForeignKey("RTagId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("RMuseum.Models.Bookmark.RUserBookmark", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser")
.WithMany()
.HasForeignKey("RAppUserId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", "RArtifactItemRecord")
.WithMany()
.HasForeignKey("RArtifactItemRecordId");
b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "RArtifactMasterRecord")
.WithMany()
.HasForeignKey("RArtifactMasterRecordId");
});
modelBuilder.Entity("RMuseum.Models.ImportJob.ImportJob", b =>
{
b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "Artifact")
.WithMany()
.HasForeignKey("ArtifactId");
});
modelBuilder.Entity("RMuseum.Models.Note.RUserNote", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser")
.WithMany()
.HasForeignKey("RAppUserId")
.OnDelete(DeleteBehavior.Cascade);
b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", "RArtifactItemRecord")
.WithMany()
.HasForeignKey("RArtifactItemRecordId");
b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "RArtifactMasterRecord")
.WithMany()
.HasForeignKey("RArtifactMasterRecordId");
b.HasOne("RMuseum.Models.Note.RUserNote", "ReferenceNote")
.WithMany()
.HasForeignKey("ReferenceNoteId");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppUser", b =>
{
b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage")
.WithMany()
.HasForeignKey("RImageId");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RCaptchaImage", b =>
{
b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage")
.WithMany()
.HasForeignKey("RImageId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RPermission", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole")
.WithMany("Permissions")
.HasForeignKey("RAppRoleId");
});
modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RTemporaryUserSession", b =>
{
b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser")
.WithMany()
.HasForeignKey("RAppUserId")
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity("RMuseum.Models.Artifact.RPictureFile", b =>
{
b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord")
.WithMany("Images")
.HasForeignKey("RArtifactItemRecordId");
});
#pragma warning restore 612, 618
}
}
}