要注册新成员,我有一个名为UserRegisterModel
. 这个模型从用户那里得到两种地址,HomeAddress
一个是必需的,WorkAddress
一个是可选的。为了获取地址,我使用了一个名为ContactEntryModel
. 我用[Required]
属性装饰了我的 ContactEntryModel 成员,这会导致家庭和工作地址都得到自动验证。
我正在寻找将 WorkAddress 标记为Ignored或Excluded的解决方案,并通过它告诉验证引擎停止验证 WorkAddress 子属性,即使它们装饰有验证属性。
public class UserRegisterModel
{
[StringLength(50), Required]
public string FirstName { get; set; }
[StringLength(50), Required]
public string LastName { get; set; }
[StringLength(10), Required]
public string IdCardNo { get; set; }
[StringLength(100), Email]
public string Email { get; set; }
public ContactEntryModel HomeContact { get; set; } //Required
public ContactEntryModel WorkContact { get; set; } //Optional
}
public class ContactEntryModel
{
[MaxLength(4), Required]
public string TelPrefix { get; set; }
[MaxLength(10), Required]
public string Tel { get; set; }
[MaxLength(50), Required]
public string Province { get; set; }
[MaxLength(50), Required]
public string City { get; set; }
[MaxLength(300), Required]
public string AddressLine { get; set; }
[MaxLength(20)]
public string PostalCode { get; set; }
}