我有一个模型,例如:
public class PageModel {
public string PropA { get; set; }
public string PropB { get; set; }
public Type DataType { get; set; }
public PageModel() {}
...
}
我的观点是这样的:
...
@using (Html.BeginForm()) {
<li>@Html.LabelFor(m => m.PropA) <br /> @Html.TextBoxFor(m => m.PropA)</li>
<li>@Html.LabelFor(m => m.PropB) <br /> @Html.TextBoxFor(m => m.PropB)</li>
<li>@Html.LabelFor(m => m.DataType) <br /> @Html.TextBoxFor(m => m.DataType)</li>
<li><input type="submit" /></li>
}
...
使用默认模型绑定,String 属性设置正确,但 Type 属性最终为 NULL,即使提供了有效的 Type 字符串表示(例如“System.String”或“System.Boolean”)。
有关如何正确绑定此 Type 属性的任何建议?特定类型的自定义模型绑定器似乎是最好的方法,但我不想重写 PropA 和 PropB 的绑定。