PGSqlContext add MangaConnector Discriminator

API use Newtonsoft Json,
This commit is contained in:
2024-12-16 18:28:58 +01:00
parent a0774841bc
commit 0d32f15ee9
3 changed files with 25 additions and 6 deletions

View File

@ -14,6 +14,7 @@ public abstract class MangaConnector(string name, string[] supportedLanguages, s
public string[] SupportedLanguages { get; init; } = supportedLanguages;
public string[] BaseUris { get; init; } = baseUris;
[JsonIgnore]
[ForeignKey("MangaIds")]
public virtual Manga[] Mangas { get; internal set; } = [];

View File

@ -22,6 +22,19 @@ public class PgsqlContext(DbContextOptions<PgsqlContext> options) : DbContext(op
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<MangaConnector>()
.HasDiscriminator(c => c.Name)
.HasValue<AsuraToon>("AsuraToon")
.HasValue<Bato>("Bato")
.HasValue<MangaHere>("MangaHere")
.HasValue<MangaKatana>("MangaKatana")
.HasValue<MangaLife>("Manga4Life")
.HasValue<Manganato>("Manganato")
.HasValue<Mangasee>("Mangasee")
.HasValue<Mangaworld>("Mangaworld")
.HasValue<ManhuaPlus>("ManhuaPlus")
.HasValue<Weebcentral>("Weebcentral")
.HasValue<MangaDex>("MangaDex");
modelBuilder.Entity<LibraryConnector>()
.HasDiscriminator<LibraryType>(l => l.LibraryType)
.HasValue<Komga>(LibraryType.Komga)