此問題與Asp.net MVC5相關。 類似的問題回答這裏: https://stackoverflow.com/questions/7674841/net-mvc3-conditionally-validating-property-which-relies-on-parent-object-proper在驗證上下文中獲取子屬性中的父對象屬性值
我有以下視圖模型:
public class ParentModel
{
public DateTime EffectiveDate {get;set}
public List<ChildModel> Children {get;set;}
.....
.....
}
public class ChildModel
{
[DateOfBirthRange(ErrorMessage="Date of Birth must be within range")]
public DateTime DateOfBirth {get;set}
......
.......
}
public class DateOfBithRange : ValidationAttribute,IClientValidatable
{
public override ValidationResult(object value, ValidationContext validationContext)
{
//here validationContext.ObjectInstance is ChildModel
//How do i get the Effective Date of ParentModel?
}
}
ChildModel是一個列表,我需要在ParentModel
ChildModel沒有屬性Parent.I不需要是否有任何方式獲取ModelBinded在發佈到此ValidationContext中的服務器上的ParentModel。 – ManojAnavatti
給你的ChildModel一個導航屬性,以便它*可以*返回到父項,並且是 - 否則你怎麼能期望找到父項?給它這個屬性應該是微不足道的。 – Mashton
@Mashton它給孩子模型一個導航屬性返回到父模型不是微不足道的,因爲導航屬性如何從表單回傳填充? –