在Asp Net Mvc(3)中,我希望能够使用某种通用视图构建器(+ formbuilder)创建一组默认视图 - 所以我不需要为每个新控制器自己创建它们(并为每个模型更改)。这适用于视图具有相同简单结构的许多情况。对于专门的观点,我会选择手动方法。
我想到了两个选择。
一个是无文件视图,其中所有必需的html都是直接从控制器生成的(如果缺少实际视图替代的视图文件)。
另一个是每个视图替代的共享视图,它们是在路径规则的帮助下设置的。
在用于编辑的共享视图文件中(例如)代码看起来像这样,构建迭代模型属性的表单:Validating dynamically created fields in ASP.NET MVC
我认为这应该是Mvc开箱即用的东西,也许我错过了什么?否则我会自己动手制作一些东西。很高兴知道其他人如何思考(和做)这个。
编辑:是的,呃,:-),其中最重要的部分确实是开箱即用的,我错过了 - 只需在/ Views / Shared文件夹中添加一组默认视图即可激活一个特定于控制器的视图丢失。就像错误信息是sayin:
未找到“编辑”视图或其主视图。搜索了以下位置: 〜/查看/ UserSubCategorySimplified / Edit.cshtml 〜/查看/共享/ Edit.cshtml
(是的脚手架非常好并且是妥协 - 但是在模型中的新变化之后,必须重新制作所有文件。)
编辑:“重新创建此控制器的所有视图” - 功能也会很好。 (模型改变或T4改变后)。
谢谢!
纳斯
答案 0 :(得分:1)
你看过DisplayForModel和EditorForModel方法吗?更多信息:http://bradwilson.typepad.com/blog/2009/10/aspnet-mvc-2-templates-part-1-introduction.html