У меня есть база данных, которая выглядеть следующим образом:Entity Framework 4.3 Нетерпеливой Загрузка нуль многих
[Invoice]
-PK:ID
-...
[InvoiceDetail]
-PK:ID
-FK:Invoice_ID
-...
У меня есть объекты C#, которые выглядят следующим образом:
[Invoice]
public virtual IEnumerable<InvoiceDetail> InvoiceDetails { get; set; }
...
[InvoiceDetail]
...
Когда я пытаюсь использовать:
MyDbContext.Invoices.Where(inv => inv.Id == 1).Include("InvoiceDetails").FirstOrDefault();
//or
MyDbContext.Invoices.Include("InvoiceDetails").Single(inv => inv.Id == 1);
у меня есть исключение:
Указанный путь Include недействителен. EntityType «DataAccessLayer.Database.Invoice» не объявляет свойство навигации с именем «InvoiceDetails».
Я не понимаю, почему он ищет «DataAccessLayer.Database.Invoice», который не имеет своей модели там. Я также не понимаю «свойство навигации», потому что я использую объект Poco (сначала код).
Кто-нибудь знает, как я могу сделать это для многих отношений?
+1 Nice catch. Я не создал класс, и я не понимаю, что виртуальный метод возвращал IEnumerator вместо ICollection. –