1

在我的模型中,我有一个 HomeAddress 和 BillingAddress 类型为 location 的人:

class Person {
public Location HomeAddress { get; set; }
public Location BillingAddress { get; set; }
... other properties
}

class Location {
[Required]
public string ZipCode { get; set; }
... other properties
}

我正在寻找一种优雅的方法来仅在必需的属性 HomeAddress 上验证“必需的”属性。我使用的是普通的 componentmodel 属性并内置了 MVC 的模型验证。所以我正在寻找的是一个属性,它将检查位置是否在 Person.HomeAddress 或 .BillingAddress 中,并且仅在第一种情况下验证。或者我应该改变我的设计并使绑定地址为 NULL,以防输入的信息不足?

4

1 回答 1

1

一种选择是您可以在您的 Person 类中实现 IValidatableObject 。这将定义一个 MVC 将自动调用的 Validate 方法。然后,您可以以编程方式围绕所需的位置条目添加逻辑,并验证那里的字段.....

于 2012-11-11T14:22:32.830 回答