Asp.net mvc 3 使用模板化帮助程序和非模板化帮助程序时,数据类型与所需的数据注释

Asp.net mvc 3 使用模板化帮助程序和非模板化帮助程序时,数据类型与所需的数据注释,asp.net-mvc-3,data-annotations,Asp.net Mvc 3,Data Annotations,我已为模型对象定义了以下数据注释:- [DataType(DataType.MultilineText)] [Required(ErrorMessage = "Book Name is required !!!")] public string BookName { get; set; } 我使用以下方法在视图中渲染模型:- @Html.EditorFor(model => model.BookName) @Html.TextBoxFor(model => model.Bo

我已为模型对象定义了以下数据注释:-

[DataType(DataType.MultilineText)]
[Required(ErrorMessage = "Book Name is required !!!")]
public string BookName { get; set; } 
我使用以下方法在视图中渲染模型:-

 @Html.EditorFor(model => model.BookName)
 @Html.TextBoxFor(model => model.BookName)
但当我将上述内容更改为以下内容时:-

 @Html.EditorFor(model => model.BookName)
 @Html.TextBoxFor(model => model.BookName)
然后只有
[必需的(ErrorMessage=“Book Name is Required!!!”)
工作。因此,我认为如果我使用非模板帮助器(TextAreaFor),Required和DataType都不起作用,那么为什么在这种情况下,[Required]起作用,而DataType不起作用呢?。
BR

MultiLenetText属性不起作用,因为使用了
TextBoxFor
helper。如果您使用的是
EditorFor
helper,则该helper将属性呈现为textarea html输入。但是,通过使用呈现为
TextBoxFor
帮助程序,您不会对该帮助程序呈现textarea进行任何更改

因此,多行属性无法再分配给输入