Mam następujący sposób repozytorium -włączeń wyrażenie ścieżka musi odnosić się do właściwości nawigacyjnym określonym rodzaju
public AccountDefinition GetCustomer2(int id)
{
var c = entities.AccountDefinitions
.Where(p=>p.ORG_ID==id)
.Include(a => a.SDOrganization)
.Include(a2 => a2.SiteDefinitions)
.Include(a3 => a3.SDOrganization.AaaPostalAddresses)
.Include(a4 => a4.SiteDefinitions.SelectMany
(a5 => a5.DepartmentDefinitions.SelectMany
(a6 => a6.SDUsers.Select
(a7 => a7.AaaUser))))
.SingleOrDefault();
return c;
}
następujące metody działania, które nazywa powyższej metody: -
public ActionResult Details2(int id = 0)
{
AccountDefinition cd = repository.GetCustomer2(id);
return View("copy",cd);
}
ale kiedy przejść do metody działania, pojawia się następujący błąd na klasy repozytorium -
The Include path expression must refer to a navigation property defined on the type. Use dotted paths for reference navigation properties and the Select operator for collection navigation properties.
Co jest nie tak z moim kodem?
Dzięki za odpowiedź, ale SDOrganization nie posiada .Wybrać. A jeśli napiszę twój kod, otrzymam następujący błąd: "" Błąd "TMS.Models.SDOrganization" nie zawiera definicji "Wybierz" i bez metody rozszerzenia "Wybierz" akceptując pierwszy argument typu " TMS.Models.SDOrganization "można znaleźć (czy brakuje instrukcji użycia lub odniesienia do zespołu?" " –
Rozumiem, to problem jest prawdopodobnie SelectMany, zmień SelectMany, aby wybrać zamiast tego. –
utknąłem na jakiś inny problem, ale ur Odpowiedź wskazała mi w dobrym kierunku –