// 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("20210517052422_TuningWizardSuggestions")] partial class TuningWizardSuggestions { protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder .HasAnnotation("Relational:MaxIdentifierLength", 128) .HasAnnotation("ProductVersion", "5.0.6") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("ClaimType") .HasColumnType("nvarchar(max)"); b.Property("ClaimValue") .HasColumnType("nvarchar(max)"); b.Property("RoleId") .HasColumnType("uniqueidentifier"); b.HasKey("Id"); b.HasIndex("RoleId"); b.ToTable("AspNetRoleClaims"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("ClaimType") .HasColumnType("nvarchar(max)"); b.Property("ClaimValue") .HasColumnType("nvarchar(max)"); b.Property("UserId") .HasColumnType("uniqueidentifier"); b.HasKey("Id"); b.HasIndex("UserId"); b.ToTable("AspNetUserClaims"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", 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("AspNetUserLogins"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => { b.Property("UserId") .HasColumnType("uniqueidentifier"); b.Property("RoleId") .HasColumnType("uniqueidentifier"); b.HasKey("UserId", "RoleId"); b.HasIndex("RoleId"); b.ToTable("AspNetUserRoles"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", 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("AspNetUserTokens"); }); modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactItemRecord", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("CoverImageIndex") .HasColumnType("int"); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("DescriptionInEnglish") .HasColumnType("nvarchar(max)"); b.Property("FriendlyUrl") .HasColumnType("nvarchar(450)"); b.Property("LastModified") .HasColumnType("datetime2"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("NameInEnglish") .HasColumnType("nvarchar(max)"); b.Property("Order") .HasColumnType("int"); b.Property("RArtifactMasterRecordId") .HasColumnType("uniqueidentifier"); 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() .HasColumnType("uniqueidentifier"); b.Property("CoverImageId") .HasColumnType("uniqueidentifier"); b.Property("CoverItemIndex") .HasColumnType("int"); b.Property("DateTime") .HasColumnType("datetime2"); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("DescriptionInEnglish") .HasColumnType("nvarchar(max)"); b.Property("FriendlyUrl") .HasColumnType("nvarchar(450)"); b.Property("ItemCount") .HasColumnType("int"); b.Property("LastModified") .HasColumnType("datetime2"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("NameInEnglish") .HasColumnType("nvarchar(max)"); b.Property("Status") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("CoverImageId"); b.HasIndex("FriendlyUrl") .IsUnique() .HasFilter("[FriendlyUrl] IS NOT NULL"); b.HasIndex("LastModified"); b.ToTable("Artifacts"); }); modelBuilder.Entity("RMuseum.Models.Artifact.RTag", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("FriendlyUrl") .HasColumnType("nvarchar(450)"); b.Property("GlobalValue") .HasColumnType("bit"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("NameInEnglish") .HasColumnType("nvarchar(max)"); b.Property("Order") .HasColumnType("int"); b.Property("PluralName") .HasColumnType("nvarchar(max)"); b.Property("PluralNameInEnglish") .HasColumnType("nvarchar(max)"); b.Property("Status") .HasColumnType("int"); b.Property("TagType") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("FriendlyUrl"); b.ToTable("Tags"); }); modelBuilder.Entity("RMuseum.Models.Artifact.RTagValue", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("FriendlyUrl") .HasColumnType("nvarchar(450)"); b.Property("Order") .HasColumnType("int"); b.Property("RArtifactItemRecordId") .HasColumnType("uniqueidentifier"); b.Property("RArtifactMasterRecordId") .HasColumnType("uniqueidentifier"); b.Property("RTagId") .HasColumnType("uniqueidentifier"); b.Property("Status") .HasColumnType("int"); b.Property("Value") .HasColumnType("nvarchar(max)"); b.Property("ValueInEnglish") .HasColumnType("nvarchar(max)"); b.Property("ValueSupplement") .HasColumnType("nvarchar(max)"); 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() .HasColumnType("uniqueidentifier"); b.Property("DateTime") .HasColumnType("datetime2"); b.Property("Note") .HasColumnType("nvarchar(max)"); b.Property("RAppUserId") .HasColumnType("uniqueidentifier"); b.Property("RArtifactItemRecordId") .HasColumnType("uniqueidentifier"); b.Property("RArtifactMasterRecordId") .HasColumnType("uniqueidentifier"); b.Property("RBookmarkType") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("RAppUserId"); b.HasIndex("RArtifactItemRecordId"); b.HasIndex("RArtifactMasterRecordId"); b.ToTable("UserBookmarks"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCat", b => { b.Property("Id") .HasColumnType("int"); b.Property("FullUrl") .HasColumnType("nvarchar(450)"); b.Property("ParentId") .HasColumnType("int"); b.Property("PoetId") .HasColumnType("int"); b.Property("Title") .HasColumnType("nvarchar(max)"); b.Property("UrlSlug") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("FullUrl"); b.HasIndex("PoetId"); b.HasIndex("ParentId", "PoetId") .HasAnnotation("SqlServer:Include", new[] { "Id" }); b.ToTable("GanjoorCategories"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorComment", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("AuthorEmail") .HasColumnType("nvarchar(max)"); b.Property("AuthorIpAddress") .HasColumnType("nvarchar(max)"); b.Property("AuthorName") .HasColumnType("nvarchar(max)"); b.Property("AuthorUrl") .HasColumnType("nvarchar(max)"); b.Property("CommentDate") .HasColumnType("datetime2"); b.Property("HtmlComment") .HasColumnType("nvarchar(max)"); b.Property("InReplyToId") .HasColumnType("int"); b.Property("PoemId") .HasColumnType("int"); b.Property("Status") .HasColumnType("int"); b.Property("UserId") .HasColumnType("uniqueidentifier"); b.HasKey("Id"); b.HasIndex("CommentDate"); b.HasIndex("InReplyToId"); b.HasIndex("PoemId"); b.HasIndex("Status"); b.HasIndex("UserId"); b.ToTable("GanjoorComments"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCommentAbuseReport", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("GanjoorCommentId") .HasColumnType("int"); b.Property("ReasonCode") .HasColumnType("nvarchar(max)"); b.Property("ReasonText") .HasColumnType("nvarchar(max)"); b.Property("ReportedById") .HasColumnType("uniqueidentifier"); b.HasKey("Id"); b.HasIndex("GanjoorCommentId"); b.HasIndex("ReportedById"); b.ToTable("GanjoorReportedComments"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorHealthCheckError", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("BrokenLink") .HasColumnType("bit"); b.Property("MulipleTargets") .HasColumnType("bit"); b.Property("ReferrerPageUrl") .HasColumnType("nvarchar(max)"); b.Property("TargetUrl") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.ToTable("GanjoorHealthCheckErrors"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorMetre", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("Rhythm") .HasColumnType("nvarchar(max)"); b.Property("UrlSlug") .HasColumnType("nvarchar(max)"); b.Property("VerseCount") .HasColumnType("int"); b.HasKey("Id"); b.ToTable("GanjoorMetres"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPage", b => { b.Property("Id") .HasColumnType("int"); b.Property("CatId") .HasColumnType("int"); b.Property("FullTitle") .HasColumnType("nvarchar(max)"); b.Property("FullUrl") .HasColumnType("nvarchar(450)"); b.Property("GanjoorPageType") .HasColumnType("int"); b.Property("HtmlText") .HasColumnType("nvarchar(max)"); b.Property("PageOrder") .HasColumnType("int"); b.Property("ParentId") .HasColumnType("int"); b.Property("PoemId") .HasColumnType("int"); b.Property("PoetId") .HasColumnType("int"); b.Property("PostDate") .HasColumnType("datetime2"); b.Property("Published") .HasColumnType("bit"); b.Property("SecondPoetId") .HasColumnType("int"); b.Property("Title") .HasColumnType("nvarchar(max)"); b.Property("UrlSlug") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("CatId"); b.HasIndex("FullUrl"); b.HasIndex("ParentId"); b.HasIndex("PoemId"); b.HasIndex("PoetId"); b.HasIndex("SecondPoetId"); b.ToTable("GanjoorPages"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPageSnapshot", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("GanjoorPageId") .HasColumnType("int"); b.Property("HtmlText") .HasColumnType("nvarchar(max)"); b.Property("MadeObsoleteByUserId") .HasColumnType("uniqueidentifier"); b.Property("Note") .HasColumnType("nvarchar(max)"); b.Property("OldTag") .HasColumnType("nvarchar(max)"); b.Property("OldTagPageUrl") .HasColumnType("nvarchar(max)"); b.Property("RecordDate") .HasColumnType("datetime2"); b.Property("RhymeLetters") .HasColumnType("nvarchar(max)"); b.Property("Rhythm") .HasColumnType("nvarchar(max)"); b.Property("SourceName") .HasColumnType("nvarchar(max)"); b.Property("SourceUrlSlug") .HasColumnType("nvarchar(max)"); b.Property("Title") .HasColumnType("nvarchar(max)"); b.Property("UrlSlug") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("GanjoorPageId"); b.HasIndex("MadeObsoleteByUserId"); b.ToTable("GanjoorPageSnapshots"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoem", b => { b.Property("Id") .HasColumnType("int"); b.Property("CatId") .HasColumnType("int"); b.Property("FullTitle") .HasColumnType("nvarchar(max)"); b.Property("FullUrl") .HasColumnType("nvarchar(450)"); b.Property("GanjoorMetreId") .HasColumnType("int"); b.Property("HtmlText") .HasColumnType("nvarchar(max)"); b.Property("OldTag") .HasColumnType("nvarchar(max)"); b.Property("OldTagPageUrl") .HasColumnType("nvarchar(max)"); b.Property("PlainText") .HasColumnType("nvarchar(max)"); b.Property("RhymeLetters") .HasColumnType("nvarchar(max)"); b.Property("SourceName") .HasColumnType("nvarchar(max)"); b.Property("SourceUrlSlug") .HasColumnType("nvarchar(max)"); b.Property("Title") .HasColumnType("nvarchar(max)"); b.Property("UrlSlug") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("CatId"); b.HasIndex("FullUrl"); b.HasIndex("GanjoorMetreId"); b.HasIndex("Id"); b.ToTable("GanjoorPoems"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoet", b => { b.Property("Id") .HasColumnType("int"); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("Nickname") .HasColumnType("nvarchar(max)"); b.Property("Published") .HasColumnType("bit"); b.Property("RImageId") .HasColumnType("uniqueidentifier"); b.HasKey("Id"); b.HasIndex("RImageId"); b.HasIndex("Published", "Id") .HasAnnotation("SqlServer:Include", new[] { "Name", "Nickname", "RImageId" }); b.ToTable("GanjoorPoets"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorSiteBanner", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("Active") .HasColumnType("bit"); b.Property("AlternateText") .HasColumnType("nvarchar(max)"); b.Property("RImageId") .HasColumnType("uniqueidentifier"); b.Property("TargetUrl") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("RImageId"); b.ToTable("GanjoorSiteBanners"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerse", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("PoemId") .HasColumnType("int"); b.Property("Text") .HasColumnType("nvarchar(max)"); b.Property("VOrder") .HasColumnType("int"); b.Property("VersePosition") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("PoemId"); b.ToTable("GanjoorVerses"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.PoemMusicTrack", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("AlbumName") .HasColumnType("nvarchar(max)"); b.Property("AlbumUrl") .HasColumnType("nvarchar(max)"); b.Property("ApprovalDate") .HasColumnType("datetime2"); b.Property("Approved") .HasColumnType("bit"); b.Property("ArtistName") .HasColumnType("nvarchar(max)"); b.Property("ArtistUrl") .HasColumnType("nvarchar(max)"); b.Property("BrokenLink") .HasColumnType("bit"); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("GanjoorTrackId") .HasColumnType("int"); b.Property("GolhaTrackId") .HasColumnType("int"); b.Property("PoemId") .HasColumnType("int"); b.Property("Rejected") .HasColumnType("bit"); b.Property("RejectionCause") .HasColumnType("nvarchar(max)"); b.Property("SingerId") .HasColumnType("int"); b.Property("SongOrder") .HasColumnType("int"); b.Property("SuggestedById") .HasColumnType("uniqueidentifier"); b.Property("TrackName") .HasColumnType("nvarchar(max)"); b.Property("TrackType") .HasColumnType("int"); b.Property("TrackUrl") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("GanjoorTrackId"); b.HasIndex("GolhaTrackId"); b.HasIndex("PoemId"); b.HasIndex("SingerId"); b.HasIndex("SuggestedById"); b.HasIndex("Approved", "Rejected"); b.ToTable("GanjoorPoemMusicTracks"); }); modelBuilder.Entity("RMuseum.Models.GanjoorAudio.Recitation", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("AudioArtist") .HasColumnType("nvarchar(max)"); b.Property("AudioArtistUrl") .HasColumnType("nvarchar(max)"); b.Property("AudioOrder") .HasColumnType("int"); b.Property("AudioSrc") .HasColumnType("nvarchar(max)"); b.Property("AudioSrcUrl") .HasColumnType("nvarchar(max)"); b.Property("AudioSyncStatus") .HasColumnType("int"); b.Property("AudioTitle") .HasColumnType("nvarchar(max)"); b.Property("FileLastUpdated") .HasColumnType("datetime2"); b.Property("FileNameWithoutExtension") .HasColumnType("nvarchar(max)"); b.Property("GanjoorAudioId") .HasColumnType("int"); b.Property("GanjoorPostId") .HasColumnType("int"); b.Property("LegacyAudioGuid") .HasColumnType("uniqueidentifier"); b.Property("LocalMp3FilePath") .HasColumnType("nvarchar(max)"); b.Property("LocalXmlFilePath") .HasColumnType("nvarchar(max)"); b.Property("Mp3FileCheckSum") .HasColumnType("nvarchar(max)"); b.Property("Mp3SizeInBytes") .HasColumnType("int"); b.Property("OggSizeInBytes") .HasColumnType("int"); b.Property("OwnerId") .HasColumnType("uniqueidentifier"); b.Property("ReviewDate") .HasColumnType("datetime2"); b.Property("ReviewMsg") .HasColumnType("nvarchar(max)"); b.Property("ReviewStatus") .HasColumnType("int"); b.Property("ReviewerId") .HasColumnType("uniqueidentifier"); b.Property("SoundFilesFolder") .HasColumnType("nvarchar(max)"); b.Property("UploadDate") .HasColumnType("datetime2"); b.HasKey("Id"); b.HasIndex("GanjoorAudioId"); b.HasIndex("GanjoorPostId"); b.HasIndex("OwnerId"); b.HasIndex("ReviewerId"); b.HasIndex("ReviewStatus", "GanjoorPostId"); b.ToTable("Recitations"); }); modelBuilder.Entity("RMuseum.Models.GanjoorAudio.RecitationPublishingTracker", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("FinishDate") .HasColumnType("datetime2"); b.Property("Finished") .HasColumnType("bit"); b.Property("FirstDbUpdated") .HasColumnType("bit"); b.Property("LastException") .HasColumnType("nvarchar(max)"); b.Property("Mp3FileCopied") .HasColumnType("bit"); b.Property("PoemNarrationId") .HasColumnType("int"); b.Property("SecondDbUpdated") .HasColumnType("bit"); b.Property("StartDate") .HasColumnType("datetime2"); b.Property("XmlFileCopied") .HasColumnType("bit"); b.HasKey("Id"); b.HasIndex("PoemNarrationId"); b.ToTable("RecitationPublishingTrackers"); }); modelBuilder.Entity("RMuseum.Models.GanjoorAudio.UserRecitationProfile", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("ArtistName") .HasColumnType("nvarchar(max)"); b.Property("ArtistUrl") .HasColumnType("nvarchar(max)"); b.Property("AudioSrc") .HasColumnType("nvarchar(max)"); b.Property("AudioSrcUrl") .HasColumnType("nvarchar(max)"); b.Property("FileSuffixWithoutDash") .HasColumnType("nvarchar(max)"); b.Property("IsDefault") .HasColumnType("bit"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("UserId") .HasColumnType("uniqueidentifier"); b.HasKey("Id"); b.HasIndex("UserId"); b.ToTable("UserRecitationProfiles"); }); modelBuilder.Entity("RMuseum.Models.GanjoorIntegration.GanjoorLink", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("ArtifactId") .HasColumnType("uniqueidentifier"); b.Property("DisplayOnPage") .HasColumnType("bit"); b.Property("GanjoorPostId") .HasColumnType("int"); b.Property("GanjoorTitle") .HasColumnType("nvarchar(max)"); b.Property("GanjoorUrl") .HasColumnType("nvarchar(max)"); b.Property("ItemId") .HasColumnType("uniqueidentifier"); b.Property("ReviewDate") .HasColumnType("datetime2"); b.Property("ReviewResult") .HasColumnType("int"); b.Property("ReviewerId") .HasColumnType("uniqueidentifier"); b.Property("SuggestedById") .HasColumnType("uniqueidentifier"); b.Property("SuggestionDate") .HasColumnType("datetime2"); b.Property("Synchronized") .HasColumnType("bit"); b.HasKey("Id"); b.HasIndex("ArtifactId"); b.HasIndex("ItemId"); b.HasIndex("ReviewerId"); b.HasIndex("SuggestedById"); b.ToTable("GanjoorLinks"); }); modelBuilder.Entity("RMuseum.Models.GanjoorIntegration.PinterestLink", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("AltText") .HasColumnType("nvarchar(max)"); b.Property("ArtifactId") .HasColumnType("uniqueidentifier"); b.Property("GanjoorPostId") .HasColumnType("int"); b.Property("GanjoorTitle") .HasColumnType("nvarchar(max)"); b.Property("GanjoorUrl") .HasColumnType("nvarchar(max)"); b.Property("ItemId") .HasColumnType("uniqueidentifier"); b.Property("LinkType") .HasColumnType("int"); b.Property("PinterestImageUrl") .HasColumnType("nvarchar(max)"); b.Property("PinterestUrl") .HasColumnType("nvarchar(max)"); b.Property("ReviewDate") .HasColumnType("datetime2"); b.Property("ReviewDesc") .HasColumnType("nvarchar(max)"); b.Property("ReviewResult") .HasColumnType("int"); b.Property("ReviewerId") .HasColumnType("uniqueidentifier"); b.Property("SuggestedById") .HasColumnType("uniqueidentifier"); b.Property("SuggestionDate") .HasColumnType("datetime2"); b.Property("Synchronized") .HasColumnType("bit"); b.HasKey("Id"); b.HasIndex("ArtifactId"); b.HasIndex("ItemId"); b.HasIndex("ReviewerId"); b.HasIndex("SuggestedById"); b.ToTable("PinterestLinks"); }); modelBuilder.Entity("RMuseum.Models.ImportJob.ImportJob", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("ArtifactId") .HasColumnType("uniqueidentifier"); b.Property("EndTime") .HasColumnType("datetime2"); b.Property("Exception") .HasColumnType("nvarchar(max)"); b.Property("FriendlyUrl") .HasColumnType("nvarchar(max)"); b.Property("JobType") .HasColumnType("int"); b.Property("ProgressPercent") .HasColumnType("decimal(18,2)"); b.Property("QueueTime") .HasColumnType("datetime2"); b.Property("ResourceNumber") .HasColumnType("nvarchar(max)"); b.Property("SrcContent") .HasColumnType("nvarchar(max)"); b.Property("SrcUrl") .HasColumnType("nvarchar(max)"); b.Property("StartTime") .HasColumnType("datetime2"); b.Property("Status") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("ArtifactId"); b.ToTable("ImportJobs"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorAlbum", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("SingerId") .HasColumnType("int"); b.Property("Url") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("SingerId"); b.ToTable("GanjoorAlbum"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorSinger", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("Name") .HasColumnType("nvarchar(450)"); b.Property("Url") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("Name"); b.ToTable("GanjoorSingers"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorTrack", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("int") .HasAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.IdentityColumn); b.Property("AlbumId") .HasColumnType("int"); b.Property("BlockReason") .HasColumnType("nvarchar(max)"); b.Property("Blocked") .HasColumnType("bit"); b.Property("Name") .HasColumnType("nvarchar(450)"); b.Property("Url") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("AlbumId"); b.HasIndex("Name"); b.ToTable("GanjoorMusicCatalogueTracks"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaCollection", b => { b.Property("Id") .HasColumnType("int"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.ToTable("GolhaCollections"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaProgram", b => { b.Property("Id") .HasColumnType("int"); b.Property("GolhaCollectionId") .HasColumnType("int"); b.Property("Mp3") .HasColumnType("nvarchar(max)"); b.Property("ProgramOrder") .HasColumnType("int"); b.Property("Title") .HasColumnType("nvarchar(max)"); b.Property("Url") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("GolhaCollectionId"); b.ToTable("GolhaPrograms"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaTrack", b => { b.Property("Id") .HasColumnType("int"); b.Property("BlockReason") .HasColumnType("nvarchar(max)"); b.Property("Blocked") .HasColumnType("bit"); b.Property("GolhaProgramId") .HasColumnType("int"); b.Property("SingerId") .HasColumnType("int"); b.Property("Timing") .HasColumnType("nvarchar(max)"); b.Property("Title") .HasColumnType("nvarchar(max)"); b.Property("TrackNo") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("GolhaProgramId"); b.HasIndex("SingerId"); b.ToTable("GolhaTracks"); }); modelBuilder.Entity("RMuseum.Models.Note.RUserNote", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("DateTime") .HasColumnType("datetime2"); b.Property("HtmlContent") .HasColumnType("nvarchar(max)"); b.Property("LastModified") .HasColumnType("datetime2"); b.Property("Modified") .HasColumnType("bit"); b.Property("NoteType") .HasColumnType("int"); b.Property("RAppUserId") .HasColumnType("uniqueidentifier"); b.Property("RArtifactItemRecordId") .HasColumnType("uniqueidentifier"); b.Property("RArtifactMasterRecordId") .HasColumnType("uniqueidentifier"); b.Property("ReferenceNoteId") .HasColumnType("uniqueidentifier"); b.Property("Status") .HasColumnType("int"); b.HasKey("Id"); b.HasIndex("RAppUserId"); b.HasIndex("RArtifactItemRecordId"); b.HasIndex("RArtifactMasterRecordId"); b.HasIndex("ReferenceNoteId"); b.ToTable("UserNotes"); }); modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSession", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("ProcessEndTime") .HasColumnType("datetime2"); b.Property("ProcessProgress") .HasColumnType("int"); b.Property("ProcessStartTime") .HasColumnType("datetime2"); b.Property("SessionType") .HasColumnType("int"); b.Property("Status") .HasColumnType("int"); b.Property("UploadEndTime") .HasColumnType("datetime2"); b.Property("UploadStartTime") .HasColumnType("datetime2"); b.Property("UseId") .HasColumnType("uniqueidentifier"); b.Property("UserId") .HasColumnType("uniqueidentifier"); b.HasKey("Id"); b.HasIndex("UserId"); b.ToTable("UploadSessions"); }); modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSessionFile", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("ContentDisposition") .HasColumnType("nvarchar(max)"); b.Property("ContentType") .HasColumnType("nvarchar(max)"); b.Property("FileName") .HasColumnType("nvarchar(max)"); b.Property("FilePath") .HasColumnType("nvarchar(max)"); b.Property("Length") .HasColumnType("bigint"); b.Property("MP3FileCheckSum") .HasColumnType("nvarchar(max)"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("ProcessResult") .HasColumnType("bit"); b.Property("ProcessResultMsg") .HasColumnType("nvarchar(max)"); b.Property("UploadSessionId") .HasColumnType("uniqueidentifier"); b.HasKey("Id"); b.HasIndex("UploadSessionId"); b.ToTable("UploadedFiles"); }); modelBuilder.Entity("RSecurityBackend.Models.Audit.Db.REvent", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("Duration") .HasColumnType("int"); b.Property("EndDate") .HasColumnType("datetime2"); b.Property("EventType") .HasColumnType("nvarchar(max)"); b.Property("IpAddress") .HasColumnType("nvarchar(max)"); b.Property("JsonData") .HasColumnType("nvarchar(max)"); b.Property("RequestUrl") .HasColumnType("nvarchar(max)"); b.Property("ResponseStatusCode") .HasColumnType("int"); b.Property("StartDate") .HasColumnType("datetime2"); b.Property("UserName") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.ToTable("AuditLogs"); }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppRole", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("ConcurrencyStamp") .IsConcurrencyToken() .HasColumnType("nvarchar(max)"); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("Name") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.Property("NormalizedName") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.HasKey("Id"); b.HasIndex("NormalizedName") .IsUnique() .HasDatabaseName("RoleNameIndex") .HasFilter("[NormalizedName] IS NOT NULL"); b.ToTable("AspNetRoles"); }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppUser", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("AccessFailedCount") .HasColumnType("int"); b.Property("Bio") .HasColumnType("nvarchar(max)"); b.Property("ConcurrencyStamp") .IsConcurrencyToken() .HasColumnType("nvarchar(max)"); b.Property("CreateDate") .HasColumnType("datetime2"); b.Property("Email") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.Property("EmailConfirmed") .HasColumnType("bit"); b.Property("FirstName") .HasColumnType("nvarchar(max)"); b.Property("LockoutEnabled") .HasColumnType("bit"); b.Property("LockoutEnd") .HasColumnType("datetimeoffset"); b.Property("NickName") .HasColumnType("nvarchar(max)"); 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("RImageId") .HasColumnType("uniqueidentifier"); b.Property("SecurityStamp") .HasColumnType("nvarchar(max)"); b.Property("Status") .HasColumnType("int"); b.Property("SureName") .HasColumnType("nvarchar(max)"); b.Property("TwoFactorEnabled") .HasColumnType("bit"); b.Property("UserName") .HasMaxLength(256) .HasColumnType("nvarchar(256)"); b.Property("Website") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("NormalizedEmail") .HasDatabaseName("EmailIndex"); b.HasIndex("NormalizedUserName") .IsUnique() .HasDatabaseName("UserNameIndex") .HasFilter("[NormalizedUserName] IS NOT NULL"); b.HasIndex("RImageId"); b.ToTable("AspNetUsers"); }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RCaptchaImage", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("DateTime") .HasColumnType("datetime2"); b.Property("RImageId") .HasColumnType("uniqueidentifier"); b.Property("Value") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("RImageId"); b.ToTable("CaptchaImages"); }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RPermission", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("OperationShortName") .HasColumnType("nvarchar(max)"); b.Property("RAppRoleId") .HasColumnType("uniqueidentifier"); b.Property("SecurableItemShortName") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.HasIndex("RAppRoleId"); b.ToTable("Permissions"); }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RTemporaryUserSession", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("ClientAppName") .HasColumnType("nvarchar(max)"); b.Property("ClientIPAddress") .HasColumnType("nvarchar(max)"); b.Property("Language") .HasColumnType("nvarchar(max)"); b.Property("LastRenewal") .HasColumnType("datetime2"); b.Property("LoginTime") .HasColumnType("datetime2"); b.Property("RAppUserId") .HasColumnType("uniqueidentifier"); b.Property("Token") .HasColumnType("nvarchar(max)"); b.Property("ValidUntil") .HasColumnType("datetime2"); b.HasKey("Id"); b.HasIndex("RAppUserId"); b.ToTable("Sessions"); }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RVerifyQueueItem", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("ClientAppName") .HasColumnType("nvarchar(max)"); b.Property("ClientIPAddress") .HasColumnType("nvarchar(max)"); b.Property("DateTime") .HasColumnType("datetime2"); b.Property("Email") .HasColumnType("nvarchar(max)"); b.Property("Language") .HasColumnType("nvarchar(max)"); b.Property("PhoneNumber") .HasColumnType("nvarchar(max)"); b.Property("QueueType") .HasColumnType("int"); b.Property("Secret") .HasColumnType("nvarchar(450)"); b.HasKey("Id"); b.HasIndex("Secret") .IsUnique() .HasFilter("[Secret] IS NOT NULL"); b.ToTable("VerifyQueueItems"); }); modelBuilder.Entity("RSecurityBackend.Models.Generic.Db.RLongRunningJobStatus", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("EndTime") .HasColumnType("datetime2"); b.Property("Exception") .HasColumnType("nvarchar(max)"); b.Property("Name") .HasColumnType("nvarchar(max)"); b.Property("Progress") .HasColumnType("float"); b.Property("StartTime") .HasColumnType("datetime2"); b.Property("Step") .HasColumnType("nvarchar(max)"); b.Property("Succeeded") .HasColumnType("bit"); b.HasKey("Id"); b.ToTable("LongRunningJobs"); }); modelBuilder.Entity("RSecurityBackend.Models.Image.RImage", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("ContentType") .HasColumnType("nvarchar(max)"); b.Property("DataTime") .HasColumnType("datetime2"); b.Property("Discriminator") .IsRequired() .HasColumnType("nvarchar(max)"); b.Property("FileSizeInBytes") .HasColumnType("bigint"); b.Property("FolderName") .HasColumnType("nvarchar(max)"); b.Property("ImageHeight") .HasColumnType("int"); b.Property("ImageWidth") .HasColumnType("int"); b.Property("LastModified") .HasColumnType("datetime2"); b.Property("OriginalFileName") .HasColumnType("nvarchar(max)"); b.Property("StoredFileName") .HasColumnType("nvarchar(max)"); b.HasKey("Id"); b.ToTable("GeneralImages"); b.HasDiscriminator("Discriminator").HasValue("RImage"); }); modelBuilder.Entity("RSecurityBackend.Models.Notification.RUserNotification", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("uniqueidentifier"); b.Property("DateTime") .HasColumnType("datetime2"); b.Property("HtmlText") .HasColumnType("nvarchar(max)"); b.Property("Status") .HasColumnType("int"); b.Property("Subject") .HasColumnType("nvarchar(max)"); b.Property("UserId") .HasColumnType("uniqueidentifier"); b.HasKey("Id"); b.HasIndex("UserId"); b.ToTable("Notifications"); }); modelBuilder.Entity("RMuseum.Models.Artifact.RPictureFile", b => { b.HasBaseType("RSecurityBackend.Models.Image.RImage"); b.Property("Description") .HasColumnType("nvarchar(max)"); b.Property("DescriptionInEnglish") .HasColumnType("nvarchar(max)"); b.Property("LastModifiedMeta") .HasColumnType("datetime2"); b.Property("NormalSizeImageHeight") .HasColumnType("int"); b.Property("NormalSizeImageStoredFileName") .HasColumnType("nvarchar(max)"); b.Property("NormalSizeImageWidth") .HasColumnType("int"); b.Property("Order") .HasColumnType("int"); b.Property("RArtifactItemRecordId") .HasColumnType("uniqueidentifier"); b.Property("SrcUrl") .HasColumnType("nvarchar(max)"); b.Property("Status") .HasColumnType("int"); b.Property("ThumbnailImageHeight") .HasColumnType("int"); b.Property("ThumbnailImageStoredFileName") .HasColumnType("nvarchar(max)"); b.Property("ThumbnailImageWidth") .HasColumnType("int"); b.Property("Title") .HasColumnType("nvarchar(max)"); b.Property("TitleInEnglish") .HasColumnType("nvarchar(max)"); b.HasIndex("RArtifactItemRecordId"); b.HasDiscriminator().HasValue("RPictureFile"); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityRoleClaim", b => { b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole", null) .WithMany() .HasForeignKey("RoleId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserClaim", b => { b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserLogin", b => { b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserRole", b => { b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole", null) .WithMany() .HasForeignKey("RoleId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Microsoft.AspNetCore.Identity.IdentityUserToken", b => { b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", null) .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactItemRecord", b => { b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", null) .WithMany("Items") .HasForeignKey("RArtifactMasterRecordId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactMasterRecord", b => { b.HasOne("RMuseum.Models.Artifact.RPictureFile", "CoverImage") .WithMany() .HasForeignKey("CoverImageId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("CoverImage"); }); modelBuilder.Entity("RMuseum.Models.Artifact.RTagValue", b => { b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", null) .WithMany("Tags") .HasForeignKey("RArtifactItemRecordId"); b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", null) .WithMany("Tags") .HasForeignKey("RArtifactMasterRecordId"); b.HasOne("RMuseum.Models.Artifact.RTag", "RTag") .WithMany() .HasForeignKey("RTagId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("RTag"); }); modelBuilder.Entity("RMuseum.Models.Bookmark.RUserBookmark", b => { b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser") .WithMany() .HasForeignKey("RAppUserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", "RArtifactItemRecord") .WithMany() .HasForeignKey("RArtifactItemRecordId"); b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "RArtifactMasterRecord") .WithMany() .HasForeignKey("RArtifactMasterRecordId"); b.Navigation("RAppUser"); b.Navigation("RArtifactItemRecord"); b.Navigation("RArtifactMasterRecord"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCat", b => { b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "Parent") .WithMany() .HasForeignKey("ParentId"); b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoet", "Poet") .WithMany() .HasForeignKey("PoetId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Parent"); b.Navigation("Poet"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorComment", b => { b.HasOne("RMuseum.Models.Ganjoor.GanjoorComment", "InReplyTo") .WithMany() .HasForeignKey("InReplyToId"); b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") .WithMany() .HasForeignKey("PoemId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") .WithMany() .HasForeignKey("UserId"); b.Navigation("InReplyTo"); b.Navigation("Poem"); b.Navigation("User"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorCommentAbuseReport", b => { b.HasOne("RMuseum.Models.Ganjoor.GanjoorComment", "GanjoorComment") .WithMany() .HasForeignKey("GanjoorCommentId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "ReportedBy") .WithMany() .HasForeignKey("ReportedById"); b.Navigation("GanjoorComment"); b.Navigation("ReportedBy"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPage", b => { b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "Cat") .WithMany() .HasForeignKey("CatId"); b.HasOne("RMuseum.Models.Ganjoor.GanjoorPage", "Parent") .WithMany() .HasForeignKey("ParentId"); b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") .WithMany() .HasForeignKey("PoemId"); b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoet", "Poet") .WithMany() .HasForeignKey("PoetId"); b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoet", "SecondPoet") .WithMany() .HasForeignKey("SecondPoetId"); b.Navigation("Cat"); b.Navigation("Parent"); b.Navigation("Poem"); b.Navigation("Poet"); b.Navigation("SecondPoet"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPageSnapshot", b => { b.HasOne("RMuseum.Models.Ganjoor.GanjoorPage", "GanjoorPage") .WithMany() .HasForeignKey("GanjoorPageId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "MadeObsoleteByUser") .WithMany() .HasForeignKey("MadeObsoleteByUserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("GanjoorPage"); b.Navigation("MadeObsoleteByUser"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoem", b => { b.HasOne("RMuseum.Models.Ganjoor.GanjoorCat", "Cat") .WithMany() .HasForeignKey("CatId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("RMuseum.Models.Ganjoor.GanjoorMetre", "GanjoorMetre") .WithMany() .HasForeignKey("GanjoorMetreId"); b.Navigation("Cat"); b.Navigation("GanjoorMetre"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorPoet", b => { b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") .WithMany() .HasForeignKey("RImageId"); b.Navigation("RImage"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorSiteBanner", b => { b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") .WithMany() .HasForeignKey("RImageId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("RImage"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.GanjoorVerse", b => { b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") .WithMany() .HasForeignKey("PoemId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Poem"); }); modelBuilder.Entity("RMuseum.Models.Ganjoor.PoemMusicTrack", b => { b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorTrack", "GanjoorTrack") .WithMany() .HasForeignKey("GanjoorTrackId"); b.HasOne("RMuseum.Models.MusicCatalogue.GolhaTrack", "GolhaTrack") .WithMany() .HasForeignKey("GolhaTrackId"); b.HasOne("RMuseum.Models.Ganjoor.GanjoorPoem", "Poem") .WithMany() .HasForeignKey("PoemId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorSinger", "Singer") .WithMany() .HasForeignKey("SingerId"); b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "SuggestedBy") .WithMany() .HasForeignKey("SuggestedById"); b.Navigation("GanjoorTrack"); b.Navigation("GolhaTrack"); b.Navigation("Poem"); b.Navigation("Singer"); b.Navigation("SuggestedBy"); }); modelBuilder.Entity("RMuseum.Models.GanjoorAudio.Recitation", b => { b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Owner") .WithMany() .HasForeignKey("OwnerId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reviewer") .WithMany() .HasForeignKey("ReviewerId"); b.Navigation("Owner"); b.Navigation("Reviewer"); }); modelBuilder.Entity("RMuseum.Models.GanjoorAudio.RecitationPublishingTracker", b => { b.HasOne("RMuseum.Models.GanjoorAudio.Recitation", "PoemNarration") .WithMany() .HasForeignKey("PoemNarrationId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("PoemNarration"); }); modelBuilder.Entity("RMuseum.Models.GanjoorAudio.UserRecitationProfile", b => { b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("User"); }); modelBuilder.Entity("RMuseum.Models.GanjoorIntegration.GanjoorLink", b => { b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "Artifact") .WithMany() .HasForeignKey("ArtifactId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", "Item") .WithMany() .HasForeignKey("ItemId"); b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reviewer") .WithMany() .HasForeignKey("ReviewerId"); b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "SuggestedBy") .WithMany() .HasForeignKey("SuggestedById") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Artifact"); b.Navigation("Item"); b.Navigation("Reviewer"); b.Navigation("SuggestedBy"); }); modelBuilder.Entity("RMuseum.Models.GanjoorIntegration.PinterestLink", b => { b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "Artifact") .WithMany() .HasForeignKey("ArtifactId"); b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", "Item") .WithMany() .HasForeignKey("ItemId"); b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "Reviewer") .WithMany() .HasForeignKey("ReviewerId"); b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "SuggestedBy") .WithMany() .HasForeignKey("SuggestedById"); b.Navigation("Artifact"); b.Navigation("Item"); b.Navigation("Reviewer"); b.Navigation("SuggestedBy"); }); modelBuilder.Entity("RMuseum.Models.ImportJob.ImportJob", b => { b.HasOne("RMuseum.Models.Artifact.RArtifactMasterRecord", "Artifact") .WithMany() .HasForeignKey("ArtifactId"); b.Navigation("Artifact"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorAlbum", b => { b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorSinger", "Singer") .WithMany("Albums") .HasForeignKey("SingerId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Singer"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorTrack", b => { b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorAlbum", "Album") .WithMany("Tracks") .HasForeignKey("AlbumId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Album"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaProgram", b => { b.HasOne("RMuseum.Models.MusicCatalogue.GolhaCollection", "GolhaCollection") .WithMany("Programs") .HasForeignKey("GolhaCollectionId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("GolhaCollection"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaTrack", b => { b.HasOne("RMuseum.Models.MusicCatalogue.GolhaProgram", "GolhaProgram") .WithMany("Tracks") .HasForeignKey("GolhaProgramId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("RMuseum.Models.MusicCatalogue.GanjoorSinger", "Singer") .WithMany() .HasForeignKey("SingerId"); b.Navigation("GolhaProgram"); b.Navigation("Singer"); }); modelBuilder.Entity("RMuseum.Models.Note.RUserNote", b => { b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "RAppUser") .WithMany() .HasForeignKey("RAppUserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); 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"); b.Navigation("RAppUser"); b.Navigation("RArtifactItemRecord"); b.Navigation("RArtifactMasterRecord"); b.Navigation("ReferenceNote"); }); modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSession", b => { b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") .WithMany() .HasForeignKey("UserId"); b.Navigation("User"); }); modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSessionFile", b => { b.HasOne("RMuseum.Models.UploadSession.UploadSession", null) .WithMany("UploadedFiles") .HasForeignKey("UploadSessionId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppUser", b => { b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") .WithMany() .HasForeignKey("RImageId"); b.Navigation("RImage"); }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RCaptchaImage", b => { b.HasOne("RSecurityBackend.Models.Image.RImage", "RImage") .WithMany() .HasForeignKey("RImageId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("RImage"); }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RPermission", b => { b.HasOne("RSecurityBackend.Models.Auth.Db.RAppRole", null) .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) .IsRequired(); b.Navigation("RAppUser"); }); modelBuilder.Entity("RSecurityBackend.Models.Notification.RUserNotification", b => { b.HasOne("RSecurityBackend.Models.Auth.Db.RAppUser", "User") .WithMany() .HasForeignKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("User"); }); modelBuilder.Entity("RMuseum.Models.Artifact.RPictureFile", b => { b.HasOne("RMuseum.Models.Artifact.RArtifactItemRecord", null) .WithMany("Images") .HasForeignKey("RArtifactItemRecordId"); }); modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactItemRecord", b => { b.Navigation("Images"); b.Navigation("Tags"); }); modelBuilder.Entity("RMuseum.Models.Artifact.RArtifactMasterRecord", b => { b.Navigation("Items"); b.Navigation("Tags"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorAlbum", b => { b.Navigation("Tracks"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GanjoorSinger", b => { b.Navigation("Albums"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaCollection", b => { b.Navigation("Programs"); }); modelBuilder.Entity("RMuseum.Models.MusicCatalogue.GolhaProgram", b => { b.Navigation("Tracks"); }); modelBuilder.Entity("RMuseum.Models.UploadSession.UploadSession", b => { b.Navigation("UploadedFiles"); }); modelBuilder.Entity("RSecurityBackend.Models.Auth.Db.RAppRole", b => { b.Navigation("Permissions"); }); #pragma warning restore 612, 618 } } }