【发布时间】:2018-11-01 12:04:37
【问题描述】:
场景是我有一个我在剃刀表单中多次使用的对象,我需要为错误消息数据属性添加前缀,以便它们在验证摘要中有意义。
快速示例:
public class Person
{
[Required(ErrorMessage = "First Name is Required")]
[StringLength(30, ErrorMessage = "First Name must be 30 characters or less")]
public string FirstName { get; set; }
}
public class User
{
[Required]
public Person User { get; set; }
[Required]
public Person NextOfKin { get; set; }
}
@Html.EditorFor(x => x.User.FirstName, new { htmlAttributes = new { placeholder = "First Name" }})
@Html.EditorFor(x => x.NextOfKin.FirstName, new { htmlAttributes = new { placeholder = "First Name" }})
如果我在表单中使用 User 类,并且 FirstName 在多个位置留空,则错误消息将相同,两者之间没有任何区别。
在这种情况下我最好的选择是什么?
更新:强调需要为多个 ErrorMessage 字符串添加前缀。
谢谢。
【问题讨论】:
-
您可以制作 viewModel / DTO(Domain transfer object) 类。在侧面添加 User & Person 属性。然后在页面中使用viewModel。
标签: c# asp.net-mvc validation razor