我对 MVC3 模型验证和 DataAnnotations 有疑问
我有以下课程:
public class A
{
public C SomeProperty {get;set;}
}
public class B
{
[Required]
public C SomeProperty {get;set;}
}
public class C
{
[Required]
public string SomeSubProperty {get;set;}
}
这是因为某些对象可能需要 C 而其他对象不需要 C,但如果需要 C,我希望 SomeSubProperty 也需要。
但是,当我在控制器中调用 ModelState.IsValid 时,如果 SomeSubProperty 未设置,则在同时使用 A 和 B 作为模型时它会返回 false。有什么办法可以产生这种行为?