//
using System;
using DBConnection.Contexts;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
#nullable disable
namespace DBConnection.Migrations.Sqlite
{
[DbContext(typeof(SqliteAppDbContext))]
[Migration("20220716211435_Add index on novel guid")]
partial class Addindexonnovelguid
{
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder.HasAnnotation("ProductVersion", "6.0.7");
modelBuilder.Entity("NovelTag", b =>
{
b.Property("NovelsUrl")
.HasColumnType("TEXT");
b.Property("TagsTagValue")
.HasColumnType("TEXT");
b.HasKey("NovelsUrl", "TagsTagValue");
b.HasIndex("TagsTagValue");
b.ToTable("NovelTag");
});
modelBuilder.Entity("Treestar.Shared.Models.DBDomain.Author", b =>
{
b.Property("Url")
.HasColumnType("TEXT");
b.Property("DateCreated")
.HasColumnType("TEXT");
b.Property("DateModified")
.HasColumnType("TEXT");
b.Property("Name")
.IsRequired()
.HasColumnType("TEXT");
b.HasKey("Url");
b.ToTable("Authors");
});
modelBuilder.Entity("Treestar.Shared.Models.DBDomain.Chapter", b =>
{
b.Property("Url")
.HasColumnType("TEXT");
b.Property("ChapterNumber")
.HasColumnType("INTEGER");
b.Property("Content")
.HasColumnType("TEXT");
b.Property("DateCreated")
.HasColumnType("TEXT");
b.Property("DateModified")
.HasColumnType("TEXT");
b.Property("DatePosted")
.HasColumnType("TEXT");
b.Property("DateUpdated")
.HasColumnType("TEXT");
b.Property("LastContentFetch")
.HasColumnType("TEXT");
b.Property("Name")
.IsRequired()
.HasColumnType("TEXT");
b.Property("NovelUrl")
.IsRequired()
.HasColumnType("TEXT");
b.Property("RawContent")
.HasColumnType("TEXT");
b.HasKey("Url");
b.HasIndex("NovelUrl");
b.ToTable("Chapters");
});
modelBuilder.Entity("Treestar.Shared.Models.DBDomain.Novel", b =>
{
b.Property("Url")
.HasColumnType("TEXT");
b.Property("AuthorUrl")
.HasColumnType("TEXT");
b.Property("DateCreated")
.HasColumnType("TEXT");
b.Property("DateModified")
.HasColumnType("TEXT");
b.Property("DatePosted")
.HasColumnType("TEXT");
b.Property("Guid")
.HasColumnType("TEXT");
b.Property("LastUpdated")
.HasColumnType("TEXT");
b.Property("Status")
.HasColumnType("INTEGER");
b.Property("Title")
.IsRequired()
.HasColumnType("TEXT");
b.HasKey("Url");
b.HasIndex("AuthorUrl");
b.HasIndex("Guid");
b.ToTable("Novels");
});
modelBuilder.Entity("Treestar.Shared.Models.DBDomain.Tag", b =>
{
b.Property("TagValue")
.HasColumnType("TEXT");
b.Property("DateCreated")
.HasColumnType("TEXT");
b.Property("DateModified")
.HasColumnType("TEXT");
b.HasKey("TagValue");
b.ToTable("Tags");
});
modelBuilder.Entity("Treestar.Shared.Models.DBDomain.User", b =>
{
b.Property("Id")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property("DateCreated")
.HasColumnType("TEXT");
b.Property("DateModified")
.HasColumnType("TEXT");
b.Property("Email")
.IsRequired()
.HasColumnType("TEXT");
b.HasKey("Id");
b.ToTable("Users");
});
modelBuilder.Entity("Treestar.Shared.Models.DBDomain.UserNovel", b =>
{
b.Property("NovelUrl")
.HasColumnType("TEXT");
b.Property("UserId")
.HasColumnType("INTEGER");
b.Property("LastChapterRead")
.HasColumnType("INTEGER");
b.HasKey("NovelUrl", "UserId");
b.HasIndex("UserId");
b.ToTable("UserNovels");
});
modelBuilder.Entity("NovelTag", b =>
{
b.HasOne("Treestar.Shared.Models.DBDomain.Novel", null)
.WithMany()
.HasForeignKey("NovelsUrl")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Treestar.Shared.Models.DBDomain.Tag", null)
.WithMany()
.HasForeignKey("TagsTagValue")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("Treestar.Shared.Models.DBDomain.Chapter", b =>
{
b.HasOne("Treestar.Shared.Models.DBDomain.Novel", null)
.WithMany("Chapters")
.HasForeignKey("NovelUrl")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
modelBuilder.Entity("Treestar.Shared.Models.DBDomain.Novel", b =>
{
b.HasOne("Treestar.Shared.Models.DBDomain.Author", "Author")
.WithMany("Novels")
.HasForeignKey("AuthorUrl");
b.Navigation("Author");
});
modelBuilder.Entity("Treestar.Shared.Models.DBDomain.UserNovel", b =>
{
b.HasOne("Treestar.Shared.Models.DBDomain.Novel", "Novel")
.WithMany()
.HasForeignKey("NovelUrl")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Treestar.Shared.Models.DBDomain.User", "User")
.WithMany("WatchedNovels")
.HasForeignKey("UserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Novel");
b.Navigation("User");
});
modelBuilder.Entity("Treestar.Shared.Models.DBDomain.Author", b =>
{
b.Navigation("Novels");
});
modelBuilder.Entity("Treestar.Shared.Models.DBDomain.Novel", b =>
{
b.Navigation("Chapters");
});
modelBuilder.Entity("Treestar.Shared.Models.DBDomain.User", b =>
{
b.Navigation("WatchedNovels");
});
#pragma warning restore 612, 618
}
}
}