在ASP.Net MVC中基于模型属性的属性生成页面的建议方法!

时间:2010-09-13 17:54:45

标签: asp.net-mvc

我们需要在我们的网站上为创建/显示/编辑生成表单。要求是这些需要由元数据驱动。我们的模型属性将归因于为该属性生成的控件类型。

[RenderAs("DatePicker", Order = 1)]
public DateTime DateOfBirth{get; set;} 

我们的想法是为SharedFolder中的Date-Picker.ascx等提供每个模板的模板。 我们需要生成大约25个这样的表单,并且正在寻找一种可重用的方法来实现这一点。使用此方法处理验证的最佳方法是什么(基本验证,如必需,小于,大于等)?您对依赖字段验证(小于字段,大于字段)的建议是什么?这听起来合理吗?

由于

3 个答案:

答案 0 :(得分:1)

结帐ASP.Net Dynamic Data。这几乎就是你要找的东西。 (如果你可以使用.Net 4.0,那么你应该可以在一个项目中使用MVC,webforms和DynamicData。)

答案 1 :(得分:1)

听起来你正在寻找MVC 2模板。

将DisplayForModel用于只读视图,使用EditorForModel创建/编辑从视图模型中的元数据构建的表单。使用“数据注释”属性来使用验证规则和其他渲染信息(标签,要使用的自定义模板等)来装饰视图模型。

这是一个快速intro video to MVC 2 templates

答案 2 :(得分:0)

您正在混合模型和视图概念。为什么你需要MVC呢?

在练习中,当常规用户需要进行一些细微更改时,您将遇到一些情况,并且在使用属性生成表单时很难支持。

我并不是说这是最好的,但我们决定坚持使用表格概念和各种形式来决定展示什么以及如何展示。 我们定义了许多辅助方法,比如RenderDatePicker,它们可以完成所有脏工作。