Ich bin mir nicht sicher, wie Include (..). ThenInclude (...) im Kontext einer many-> many Beziehung definiert wird.Viele Navigationseigenschaften in EF-Core füllen
Das also ist die nav Eigenschaft bevölkern, SiteEducators der Link
var site = this._dbContext.Sites.Include(x => x.SiteEducators).FirstOrDefault();
pro der Dokumentation definiert ist
public DbSet<Educator> Educators { get; set; }
public DbSet<Site> Sites { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
#region Site->Educator Link
modelBuilder.Entity<SiteEducator>()
.HasKey(t => new { t.SiteId, t.EducatorId });
modelBuilder.Entity<SiteEducator>()
.HasOne(pt => pt.Site)
.WithMany(p => p.SiteEducators)
.HasForeignKey(pt => pt.SiteId);
modelBuilder.Entity<SiteEducator>()
.HasOne(pt => pt.Educator)
.WithMany(t => t.SiteEducators)
.HasForeignKey(pt => pt.EducatorId);
#endregion
}
Problem ist, wenn ich „site“ debuggen es hat die Navigationseigenschaft und ich kann Den Wert von "EducatorId" sehen Sie gut, aber die Navigationseigenschaft von IT Educator ist null.
model.SiteEducators.FirstOrDefault().Educator
So würde dies null sein, wo dies einen Wert
model.SiteEducators.FirstOrDefault().EducatorId
Beispiel von dem, was ich meine zurückkehren würde:
Es muss eine Art "ThenInclude" auf dem Array geben?
Wie stelle ich dieses andere Objekt dar, was ist das Synatax, irgendeine Idee?
Jede Hilfe wäre toll, thx Jungs :)
können Sie auch Ihren Modellcode eingeben? – Sampath
Sicher, werde ich auf meinem Telefon und kann nicht wirklich ... Aber es ist direkt aus der Dokumentation. https://docs.efproject.net/en/latest/modeling/relationships.html#many-to-many –
Docs einfach nicht sagen, wie die Daten zu füllen:/ –