ASP.NET MVC:Html.EditorFor和多行文本框

这是我的代码:

<div class="editor-label"> @Html.LabelFor(model => model.Comments[0].Comment) </div> <div class="editor-field"> @Html.EditorFor(model => model.Comments[0].Comment) @Html.ValidationMessageFor(model => model.Comments[0].Comment) </div> 

这是它产生的:

  <div class="editor-label"> <label for="Comments_0__Comment">Comment</label> </div> <div class="editor-field"> <input class="text-box single-line" data-val="true" data-val-required="The Comment field is required." id="Comments_0__Comment" name="Comments[0].Comment" type="text" value="" /> <span class="field-validation-valid" data-valmsg-for="Comments[0].Comment" data-valmsg-replace="true"></span> </div> 

我怎样才能告诉它,该字段应该是一个五行的文本框,而不是一个单行的文本框?

使用数据types“MultilineText”:

 [DataType(DataType.MultilineText)] public string Text { get; set; } 

请参阅ASP.NET MVC3 – 带有@ Html.EditorFor的textarea

在你看来,而不是:

 @Html.EditorFor(model => model.Comments[0].Comment) 

只是使用:

 @Html.TextAreaFor(model => model.Comments[0].Comment, 5, 1, null) 

其他方式

 @Html.TextAreaFor(model => model.Comments[0].Comment) 

在你的CSS做到这一点

 textarea { font-family: inherit; width: 650px; height: 65px; } 

DataType处理允许数据回车,不是每个人都喜欢的。