我是stackoverflow和.Net MVC 3的新手。
我正在使用数据库第一种方法在.Net中构建MVC 3 Web应用程序。我创建了.edmx文件,Visual Studio通过该文件自动生成模型类和上下文类文件。
现在我想在我的应用程序中添加一些验证,但是我无法在“Models”文件夹中找到自动生成的模型类。虽然我能够将验证放在我的.edmx文件的designer.cs文件中,其中公共部分类出现在我的应用程序“UserDetails”表中。
请澄清一下,我如何找到这些自动生成的模型类文件,或者告诉我,我尝试的方法是否是将验证放在我的.edmx文件的designer.cs文件中的好方法?
答案 0 :(得分:2)
自动生成的模型类文件位于.designer.cs文件中。这些是作为部分类生成的,应该通过创建自己的分部类来分离业务逻辑。否则,自动生成将在从模型重新生成类时覆盖您的代码。
一个建议,如果您正在接近实体框架,DbContext和Code First(POCO)是您应该考虑的第一个功能。并且DbContext比ObjectContext更易于使用,并且将满足最常见的开发需求。
如果您是EF新手,请按照与DbContext一起使用的ado.net团队的演练进行操作。 (EF 4.1模型和数据库第一次演练)。
http://blogs.msdn.com/b/adonet/archive/2011/03/15/ef-4-1-model-amp-database-first-walkthrough.aspx
(MVC中的“Models”文件夹实际上是视图模型,必须根据视图创建自己。)
答案 1 :(得分:0)
您需要根据渲染视图和验证的方式创建模型(也可以说是ViewModel部分)。将验证放在designer.cs文件中是不好的做法。
在MVC中进行分离的最佳做法