HiddenInput(DisplayValue = false)] vs [ScaffoldColumn(false)]

时间:2011-11-10 19:13:01

标签: asp.net-mvc asp.net-mvc-3 asp.net-mvc-2

什么是ScaffoldColumn(false)HiddenInput(DisplayValue = false)

这两者之间的主要区别是什么?哪一个最好用?谢谢!!!

1 个答案:

答案 0 :(得分:12)

[ScaffoldColumn(false)]告诉Visual Studio在为视图生成模板时不要为列添加支架。创建新视图时,可以创建强类型视图。当您这样做时,Visual Studio会询问您要使用的模板(创建,编辑,列表等)。如果您创建编辑/创建模板;例如,如果您将[ScaffoldColumn(false)]放在模型属性上,那么它就不会在模板中生成DisplayFor()或EditorFor()调用,因此它不会包含在您的视图中。

[HiddenInput]将告诉DisplayFor / EditorFor方法它应该为该值创建一个隐藏的html字段。当您发布到表单时,它将包含在值中,但当人们查看它时,它将从视图中“隐藏”。