Bagaimana cara menggunakan anotasi data untuk melakukan validasi bersyarat pada model?
Misalnya, katakanlah kita memiliki model berikut (Orang dan Senior):
public class Person
{
[Required(ErrorMessage = "*")]
public string Name
{
get;
set;
}
public bool IsSenior
{
get;
set;
}
public Senior Senior
{
get;
set;
}
}
public class Senior
{
[Required(ErrorMessage = "*")]//this should be conditional validation, based on the "IsSenior" value
public string Description
{
get;
set;
}
}
Dan tampilan berikut:
<%= Html.EditorFor(m => m.Name)%>
<%= Html.ValidationMessageFor(m => m.Name)%>
<%= Html.CheckBoxFor(m => m.IsSenior)%>
<%= Html.ValidationMessageFor(m => m.IsSenior)%>
<%= Html.CheckBoxFor(m => m.Senior.Description)%>
<%= Html.ValidationMessageFor(m => m.Senior.Description)%>
Saya ingin menjadi bidang persyaratan bersyarat properti "Senior.Description" berdasarkan pemilihan kelayakan "IsSenior" (benar -> wajib). Bagaimana cara menerapkan validasi bersyarat dalam ASP.NET MVC 2 dengan anotasi data?
Seniorobjek selalu senior, jadi mengapa IsSenior dapat palsu dalam kasus itu. Jangan Anda hanya perlu properti 'Person.Senior' menjadi nol ketika Person.IsSeniorsalah. Atau mengapa tidak menerapkan IsSeniorproperti sebagai berikut: bool IsSenior { get { return this.Senior != null; } }.