Làm thế nào để sử dụng chú thích dữ liệu để thực hiện xác nhận có điều kiện trên mô hình?
Ví dụ: giả sử chúng ta có mô hình sau (Người và Người cao tuổi):
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;
}
}
Và quan điểm sau:
<%= 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)%>
Tôi muốn trở thành trường bắt buộc có điều kiện thuộc tính "Senior.Des mô tả" dựa trên việc lựa chọn tính phù hợp "IsSenior" (đúng -> bắt buộc). Làm thế nào để thực hiện xác nhận có điều kiện trong ASP.NET MVC 2 với chú thích dữ liệu?
Senior
đối tượng luôn là cấp cao, vậy tại sao IsSenior có thể sai trong trường hợp đó. Đừng chỉ cần thuộc tính 'Person.Senior' là null khi Person.IsSenior
sai. Hoặc tại sao không thực hiện các IsSenior
tài sản như sau : bool IsSenior { get { return this.Senior != null; } }
.