Использование Include в Entity Framework 4 с лямбда-выражениями
Я видел много статей о том, как преодолеть этот вопрос, все связанные с CTP4, или добавление моих собственных методов расширения.
есть ли "официальный" способ EF4 использовать лямбда-выражения внутри include (как для отношений первого уровня, так и для 2-го и более уровня) или он в конечном итоге не был включен в RTM ?
это есть один - я был бы рад узнать, как это сделать, как использовать лямбда-выражение в моем коде сейчас (с #system.данные.сущность #система.данные.в LINQ) еще дает мне:
не удается преобразовать лямбда-выражение В тип 'string', потому что это не тип делегата
на:
var customers = from c in
context.Customers.Include(c=>c.Phone)
4 ответов:
RTM-версия Entity Framework 4.1 фактически включает методы расширения на
EntityFramework.dllфайл, для нетерпеливой загрузки с лямбда через . Просто включить DLL в свой проект и вы должны быть в состоянии написать код:var princesses1 = context.Princesses.Include(p => p.Unicorns).ToList();Не забудьте добавить оператор Import / Using для включения
хотя это подразумевается в вопросе, для тех, кто имеет ту же проблему, где они не могут использовать лямбды С.Включаем, убедитесь, что у вас есть это:
using System.Data.Entity;
нет на данный момент нет официальной поддержки включения с лямбда-выражением в RTM. Я использую этой.
когда мы говорим о CTP4, мы имеем в виду функцию Entity Framework. Это более новый API, чем EF4. Он в основном включает в себя первый код и несколько других улучшений.
хорошая статья о лямбда-выражениях в методе include
Comments