Die Include () -Methode eignet sich sehr gut für Listen für Objekte. Aber was ist, wenn ich zwei Ebenen tief gehen muss? Die folgende Methode gibt beispielsweise ApplicationServer mit den hier gezeigten enthaltenen Eigenschaften zurück. ApplicationsWithOverrideGroup ist jedoch ein weiterer Container, der andere komplexe Objekte enthält. Kann ich auch ein Include () für diese Eigenschaft ausführen? Oder wie kann ich diese Eigenschaft vollständig laden?
So wie es jetzt aussieht, ist diese Methode:
public IEnumerable<ApplicationServer> GetAll()
{
return this.Database.ApplicationServers
.Include(x => x.ApplicationsWithOverrideGroup)
.Include(x => x.ApplicationWithGroupToForceInstallList)
.Include(x => x.CustomVariableGroups)
.ToList();
}
Füllt nur die Enabled-Eigenschaft (unten) und nicht die Application- oder CustomVariableGroup-Eigenschaften (unten). Wie mache ich das möglich?
public class ApplicationWithOverrideVariableGroup : EntityBase
{
public bool Enabled { get; set; }
public Application Application { get; set; }
public CustomVariableGroup CustomVariableGroup { get; set; }
}
Expression must be a member expression
wenn ich Folgendes versuche: So schließen Sie eine Sammlung und dann eine Sammlung eine Ebene tiefer ein :query.Include(e => e.Level1Collection.Select(l1 => l1.Level2Collection))
.