我有一个名为Job的模型,它有一个必填字段,这里是为了简单起见:
public class Job
{
[Required(ErrorMessage = "Insured Name is required.")]
[MaxLength(100, ErrorMessage = "Insured Name cannot be longer than 100 characters.")]
[DisplayName("Insured Name")]
public string InsuredName { get; set; }
}
我现在需要有一种称为私有作业的作业,它具有相同的字段,并映射到同一个数据库表,除了我试图更改一堆字段的验证消息。即,被保险人姓名成为客户名称。
我以为我可以通过子类化来做到这一点,所以我创建了一个例子:
[NotMapped]
public class PrivateJobDTO : Job
{
[Required(ErrorMessage = "Client Name is required.")]
[MaxLength(100, ErrorMessage = "Client Name cannot be longer than 100 characters.")]
[DisplayName("Client Name")]
new public string InsuredName { get; set; }
}
当我将PrivateJobDTO传递给我的viewmodel时,我仍然收到验证错误消息“需要保险名称”,而我希望看到“需要客户名称”
我做错了什么? (这是正确的方法)
答案 0 :(得分:0)
感谢评论,它告诉我,我正在将基类传递给模型,而不是子类,这是一个愚蠢的错误。