我是入门框架的新手。我正在研究 Julia Lerman 的书,但我坚持使用 Query Builder 方法。我收到以下编译错误:
Error 1 'System.Data.Entity.DbSet<Chapter2ConsoleApp.Contact>' does not
contain a definition for 'Where' and the best extension method overload
'System.Linq.Queryable.Where<TSource>(System.Linq.IQueryable<TSource>,
System.Linq.Expressions.Expression<System.Func<TSource,bool>>)' has some invalid arguments
C:\EF\ProgrammingEntityFramework\Chapter2ConsoleApp\Program.cs 59 32
Chapter2ConsoleApp
有代码。
using (SampleEntities context = new SampleEntities())
{
var contacts = context.Contacts.Where("it.FirstName = 'Robert'").OrderBy("it.LastName");
foreach (Contact contact in contacts)
{
Console.WriteLine("{0} {1}",
contact.FirstName.Trim(),
contact.LastName);
}
}
Console.Write("Press Enter...");
Console.ReadLine();
}
带有 lambda 的 Linq to 实体可以正常工作。当我通过 IntelliSense 查看错误代码时,我可以看到有一个 Where 方法。最后,我尝试了[(IObjectContextAdapter)]
对上下文的强制转换,但我无法获得 Contact 方法。
有人会帮助我吗?