我们将一些项目从VS2010迁移到VS2012,但仍使用.NET 4.0和不 .NET 4.5
当我添加新的EDMX时,VS2012使用EF 5.0,但我想继续使用版本4.x它是第一点。
第二点版本5.0,继承自DbContext而不是版本4.x的ObjectContext。对于5.0版本,我没有看到任何方法将连接字符串作为参数传递。
如何在VS2012中使用版本4.x,具有相同的EDMX设计器行为?
谢谢,
答案 0 :(得分:10)
正如评论中所提到的,你真的得到了EF 4.4,而不是EF 5.0。然而,令人困惑的是,EF 4.4 in包含在NuGet EntityFramework 5.0包中。
对于您的其他问题,您可以在设计器中打开EDMX,将“代码生成策略”从“无”恢复为“默认”,然后在解决方案资源管理器中删除.tt
文件。现在,您将再次拥有ObjectContext
,如果您愿意,可以从项目中删除EntityFramework包。
我不确定是否有任何方法可以更改添加NuGet包的默认行为。