MVC EDMX Codebehind使用ObjectContext和DBContext

时间:2012-05-02 14:16:48

标签: asp.net-mvc entity-framework

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

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

但参赛作品尚不清楚。我发现使用DbContext进入是新的。

如何让生成的代码生成正确的内容?

这是一个DB First项目

2 个答案:

答案 0 :(得分:3)

您必须在Visual Studio中将EF 4.x DbContext Generator应用于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的最新版本和重命名版本)

该模板将从您的EDMX模型生成POCO类和派生的DbContext

答案 1 :(得分:1)

请查看此文章“Using DbContext To Query Model-First/Database-First EDMX Models”,这样您就可以继续使用现有代码而无需进行任何更改。