模型的屬性:驗證消息不表示用於子類的模型
public class Person : IValidatableObject
{
public Address ResidentialAddress { get; set; }
public Address PostalAddress { get; set; }
}
public class Address
{
public string Address1 { get; set; }
}
在模型
:
public IEnumerable<ValidationResult> Validate(ValidationContext validationContext)
{
if (string.IsNullOrWhiteSpace(PostalAddress.Address1))
{
yield return
new ValidationResult("Postal address is required",
new[] { nameof(PostalAddress.Address1) });
}
}
檢視:(用於地址的信息查看人內部的局部視圖)
@Html.ValidationMessageFor(m => m.Address1)
在html中出現這個名字PostalAddress.Address1
和編號PostalAddress_Address1
不幸的是nameof(PostalAddress.Address1)
只是返回Address1
。
我試過用PostalAddress.Address1
和PostalAddress_Address1
代替它,並且無法顯示錯誤。
什麼是祕密?
您的模型需要實現'IValidatableObject' –
Person實際上是一個視圖模型,它的簡化問題。驗證正在工作,我只想知道如何獲取顯示的錯誤... – stuartdotnet