মডেলটিতে শর্তসাপেক্ষ বৈধতা করতে ডেটা টীকাগুলি কীভাবে ব্যবহার করবেন?
উদাহরণস্বরূপ, আসুন আমরা বলি যে আমাদের কাছে নিম্নলিখিত মডেল রয়েছে (ব্যক্তি এবং প্রবীণ):
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;
}
}
এবং নিম্নলিখিত ভিউ:
<%= 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)%>
আমি "সিনিয়র" বিবরণ "সম্পত্তি শর্তসাপেক্ষে প্রয়োজনীয় ক্ষেত্র হতে চাই" ইসসিনিয়ার "যথাযথ (সত্য -> প্রয়োজনীয়) নির্বাচনের উপর ভিত্তি করে। ডেটা টীকা সহ এএসপি.নেট এমভিসি 2 এ শর্তযুক্ত বৈধতা কীভাবে প্রয়োগ করা যায়?
Senior
অবজেক্ট সর্বদা সিনিয়র থাকে, তবে ইসসিনিয়ার কেন সেই ক্ষেত্রে মিথ্যা হতে পারে। Person.IsSenior
মিথ্যা হলে আপনার কেবল 'ব্যক্তি.সিনিয়র' সম্পত্তি নালাগুলির প্রয়োজন হয় না । বা কেন বাস্তবায়ন IsSenior
নিম্নরূপ সম্পত্তি: bool IsSenior { get { return this.Senior != null; } }
।