我有一个名为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时,我仍然收到“需要保险名称”的验证错误消息,而我希望看到“需要客户端名称”
我究竟做错了什么? (这是正确的方法)
感谢评论,它告诉我,我正在将基类传递给模型,而不是子类,愚蠢的错误。