1

我正在测试机器上尝试 VS2012 中现有的 .NET 4.0 解决方案(仅安装了 VS2012 和 SQL Server 2008),当我尝试将 lambda 语法与 Include 扩展方法一起使用时出现上述错误。

现有版本的解决方案有一个EntityFramework.dll的引用,这是我使用Include方法必须添加的,但是我在VS2012中看的升级版没有这个引用,也找不到该名称的 DLL 在另一台机器上的位置。System.Data.Entity 的 using 语句显示为灰色,因为 ReSharper 认为不需要它。不知道为什么。

示例代码:这是现有解决方案中的内容......

using (var context = new RSSFeedsEntities()) {  
  WebSite someSite = context.WebSites.Include(w => w.Feeds).FirstOrDefault(w => w.WebSiteID == 1);  
}

知道如何解决这个问题吗?谢谢

4

1 回答 1

2

啊哈!找到了答案。

微软以他们的智慧做出了(在我看来)愚蠢的决定,不像开发机架的其他部分一样安装 Entity Framework,而是将最新版本仅作为 NuGet 包提供。他们到底为什么这样做超出了我的理解,因为我现在必须为每个解决方案单独安装 EF,而不是安装它并立即使用它。

无论如何,我使用 NuGet 包管理器安装 EF 5.0,错误就消失了。

希望这可以帮助某人。

于 2012-10-11T22:18:12.350 回答