Работа над импортом заклинаний

This commit is contained in:
2025-05-05 19:23:43 +04:00
parent 2c1756cef6
commit fc5d68ca1f
26 changed files with 696 additions and 87 deletions
+29 -5
View File
@@ -159,7 +159,10 @@ public partial class Pf2eDbContext
modelBuilder.Entity<Language>(entity => { });
modelBuilder.Entity<Training>(entity => { });
modelBuilder.Entity<Training>(entity =>
{
BindLocaleString(entity, t => t.Name);
});
}
private void DefineStructure(ModelBuilder modelBuilder)
@@ -331,6 +334,28 @@ public partial class Pf2eDbContext
.WithMany(g => g.Subclasses)
.HasForeignKey(s => s.GroupId)
.OnDelete(DeleteBehavior.Cascade);
entity
.HasMany(e => e.Entities)
.WithMany()
.UsingEntity<SubclassProvidedEntities>(
l => l.HasOne<Entity>().WithMany().HasForeignKey(se => se.EntityId),
r => r.HasOne<Subclass>().WithMany().HasForeignKey(se => se.SubclassId)
);
entity
.HasMany(e => e.Trainings)
.WithOne(t => t.Subclass)
.HasForeignKey(t => t.SubclassId)
.OnDelete(DeleteBehavior.Cascade);
});
modelBuilder.Entity<SubclassTrainings>(entity =>
{
entity
.HasOne(d => d.Subclass)
.WithMany(p => p.Trainings)
.HasForeignKey(d => d.SubclassId)
.OnDelete(DeleteBehavior.Cascade);
});
// Condition
@@ -413,11 +438,10 @@ public partial class Pf2eDbContext
BindEntity(entity);
entity
.HasOne(e => e.SpellArea)
.HasMany(e => e.SpellAreas)
.WithOne(e => e.Spell)
.HasForeignKey<SpellArea>(e => e.SpellId)
.OnDelete(DeleteBehavior.Cascade)
.IsRequired(false);
.HasForeignKey(e => e.SpellId)
.OnDelete(DeleteBehavior.Cascade);
entity
.HasOne(e => e.SpellRitual)