Ich habe drei ModellklassenEntity Framework verschachtelt Navigationseigenschaften zählen nur
public class Item1{
public int Id;
public List<Item2> Item2List { get; set; }
}
public class Item2{
public int Id;
//this is the FK
public int Item1Id {get;set;}
public Item1 Item1 {get;set;}
//Not in db. Ignored field in EntityTypeConfiguration
public int Item3Count;
public List<Item3> Item3List { get; set; }
}
public class Item3{
public int Id;
//this is the FK
public int Item2Id {get;set;}
public Item2 Item2 {get;set;}
}
ich die Liste der element1 zusammen mit Liste der damit verbundenen Element2, und laden Sie die COUNT von Item3List in Verbindung mit Artikel 2 ohne das Laden der zurückkehren wollen Artikel3Liste. Hier
ist, was ich jetzt tue:
public IEnumerable<Item1> GetItems()
{
return base.Query().Include(item1 => item1.Item2List.Select(item2 => item2.Item3List)).ToList();
}
Das gibt mir die Liste aller drei Objekte element1, Element2 und Item3. Aber ich brauche nur die Anzahl von Item3List in Item3Count und nicht die gesamte Item3List-Liste. Wie kann ich das erreichen? Ich habe das unten versucht, aber es wirft Fehler.
return base.Query().Include(item1 => item1.Item2List.Select(item2 => new Item2 {
Item3Count = item2.Item3List.Count()
})).ToList();
Der Pfadausdruck muss mit einer Navigationseigenschaft bezieht von der Art definiert. Verwenden Sie gepunktete Pfade für die Referenznavigation Properties und den Operator Select für die Objektnavigation . Parametername: Pfad
Danke! Ich war mir nicht sicher, ob es möglich ist, aber das musste ich wissen – codermav