我有一个复杂的模型。
我有 my UserViewModel
which 有几个属性,其中两个是HomePhone
and WorkPhone
。两种类型PhoneViewModel
。在PhoneViewModel
我有CountryCode
,AreaCode
和Number
所有的字符串。我想将其设为CountryCode
可选但AreaCode
强制Number
。
这很好用。我的问题是 inUserViewModel
WorkPhone
是强制性的,而HomePhone
不是。
无论如何我可以通过在Require
属性中PhoneViewModel
设置任何属性来禁用属性HomeWork
吗?
我试过这个:
[ValidateInput(false)]
但它仅适用于类和方法。
代码:
public class UserViewModel
{
[Required]
public string Name { get; set; }
public PhoneViewModel HomePhone { get; set; }
[Required]
public PhoneViewModel WorkPhone { get; set; }
}
public class PhoneViewModel
{
public string CountryCode { get; set; }
public string AreaCode { get; set; }
[Required]
public string Number { get; set; }
}