Asp.net mvc 3 将实体框架4(“数据库优先”)和MVC3绑定在一起的最佳方法

Asp.net mvc 3 将实体框架4(“数据库优先”)和MVC3绑定在一起的最佳方法,asp.net-mvc-3,entity-framework-4,repository,database-first,Asp.net Mvc 3,Entity Framework 4,Repository,Database First,对于C#Net(.net4)、EF4、Winforms和MVC3,我相对来说是个新手 在为分配给我的任务开发Winforms“后端”的过程中,我在SQL Server中设计了一个数据库。我设置了一个单独的解决方案,并从数据库中创建了一个.edmx,作为解决方案中自己的项目/程序集。解决方案中还有引用.edmx程序集的winforms应用程序。使用默认的EF4代码生成,我构建了Winforms应用程序,一切都很好 现在,我必须构建最终用户web前端。我想使用MVC3。我已经通过了有关Plurals

对于C#Net(.net4)、EF4、Winforms和MVC3,我相对来说是个新手

在为分配给我的任务开发Winforms“后端”的过程中,我在SQL Server中设计了一个数据库。我设置了一个单独的解决方案,并从数据库中创建了一个.edmx,作为解决方案中自己的项目/程序集。解决方案中还有引用.edmx程序集的winforms应用程序。使用默认的EF4代码生成,我构建了Winforms应用程序,一切都很好

现在,我必须构建最终用户web前端。我想使用MVC3。我已经通过了有关Pluralsight的MVC3教程,并从中对MVC3有了相当不错的理解。但是,在这里和其他地方,MVC3+EF4的大多数示例都是“代码优先”

我的困惑是,首先将EF4数据库与MVC3结合起来的最佳方法是什么?我看过一些EF4Templates,但是,似乎它们生成的POCO不同于默认的EF4,并且会破坏我的Winforms应用程序。我也读过一些关于存储库和Automapper使用的文章。我可以在MVC3项目中添加对EF4和my.edmx的引用(与我在Winforms中所做的相同),但似乎仍然需要构建控制器/视图的模型,或者可以直接使用控制器中的默认EF4类

就MVC3而言,只是寻求一些关于如何实现这一点的指导


谢谢

如果需要,可以直接使用控制器中的默认EF4类。MVC 3 Tools Update for Add and scaffolding Controller中的工具支持首先使用代码,但如果要直接使用对象,也可以使用.edmx中的现有上下文

如果您希望在应用程序中使用存储库模式,可以查看MvcScaffolding包,有关它的一些信息可以在Steve Sanderson的博客上找到


如果您愿意,也可以自己创建视图模型。

感谢您的快速反馈!我会看看你提供的链接。我的想法是将我的努力投入到“最佳实践”中。更新:在浏览一些不同的搜索术语时,我确实发现了Julie Lerman在MSDN上发表的这篇有用的MSDN博客文章,它实际上涉及到在EF4.1中使用DBContext生成器将一个更简单的对象模型分层到数据库上的第一个场景: