4

我是 EF 的新手。我的模型有一个单独的项目。我安装了 EF 4.3.1.0。我看到 Context 的基类是 ObjectContext 而不是 DbContext。当我在前端项目中搭建我的控制器时,这成为一个问题,在编辑操作中它调用

context.Entry(status).State = EntityState.Modified; 

但条目未知。我发现Entry 是新的DbContext。

如何让生成的代码生成正确的东西?

这是一个 DB First 项目

4

2 回答 2

3

您必须将EF 4.x DbContext Generator应用到 Visual Studio 中的 EDMX 模型。您可以从 Visual Studio 扩展管理器安装生成器模板。

安装模板后,请按照本文第 4 点中的步骤操作:

http://blogs.msdn.com/b/adonet/archive/2011/03/15/ef-4-1-model-amp-database-first-walkthrough.aspx

(用安装的“EF 4.x DbContext Generator”替换帖子中的“ADO.NET DbContext Generator”,这是 EF 4.3.1 的最新和重命名版本)

该模板将生成 POCO 类和一个派生DbContext自您的 EDMX 模型的类。

于 2012-05-02T16:08:33.403 回答
1

查看这篇文章“使用 DbContext 查询模型优先/数据库优先 EDMX 模型”,这将允许您继续使用现有代码而无需进行任何更改。

于 2012-10-14T21:48:43.803 回答