我的模型中有描述......
[Required]
[StringLength(1000, ErrorMessage="Description cant be more than 1000.")]
[DataType(DataType.Text)]
private string description;
public string Description
{
get { return description; }
set { description = value; }
}
在我看来,我有......
@Html.TextAreaFor(e => e.Description, new { cols = "60", rows = "12", @class = "focusChanger" })
但实际上我需要将textarea称为'myDivId',但如果我更改html属性中的Id,它将不会绑定到模型。我该怎么办?
答案 0 :(得分:2)
如果我更改html属性中的Id,它将不会绑定到模型
id
属性与绑定无关。它的值永远不会发送到服务器。随意改变它。它是生成的name
的{{1}}属性,用于在提交表单时将值发送到服务器。
答案 1 :(得分:0)
有两种方法可以做到这一点。第一种是创建自定义模型绑定器。有关详细信息,请参阅here。
而不是这样,我建议一种更简单的方法来创建一个viewmodel。 Bind formValue to property of different name, ASP.NET MVC中最高投票的答案会让您了解如何做到这一点。