我知道这已经讨论过很多次了。
我想用
@Html.EditorFor(u => u.Password, new { required = "required" })
不幸的是,默认情况下这是不可能的,因为 EditorFor 会覆盖 Html 属性。
我不想使用 TextBoxFor,因为我希望根据 DisplayFormat 属性对值进行格式化。
有什么解决办法吗?
我知道这已经讨论过很多次了。
我想用
@Html.EditorFor(u => u.Password, new { required = "required" })
不幸的是,默认情况下这是不可能的,因为 EditorFor 会覆盖 Html 属性。
我不想使用 TextBoxFor,因为我希望根据 DisplayFormat 属性对值进行格式化。
有什么解决办法吗?
您可以为字符串类型 ( ) 编写自定义编辑器模板~/Views/Shared/EditorTemplates/string.cshtml
:
@Html.TextBox(
"",
ViewData.TemplateInfo.FormattedModelValue,
ViewData
)
接着:
@Html.EditorFor(u => u.Password, new { required = "required" })
将按预期工作。
不确定这是一个选项,但您可以将 [Required] 作为模型上的属性装饰器。