আমার এইচটিএমএল.ভ্যালিডেশনসমেরিতে কিছু সমস্যা আছে। আমি ভ্যালিডেশনসমেরিতে সম্পত্তি ত্রুটিগুলি প্রদর্শন করতে চাই না। এবং আমি যখন এইচটিএমএল.ভালিডেশনসমেরি (সত্য) সেট করি তখন এটি মডেলস্টেট থেকে ত্রুটি বার্তা প্রদর্শন করে না। যখন স্ট্রিংটিতে কন্ট্রোলার অ্যাকশনে কিছু ব্যতিক্রম হয়
MembersManager.RegisterMember(member);
ক্যাচ বিভাগটি মডেলস্টেটে ত্রুটি যুক্ত করে:
ModelState.AddModelError("error", ex.Message);
তবে ভ্যালিডেশনসামারিটি এই ত্রুটি বার্তাটি প্রদর্শন করে না। আমি যখন এইচটিএমএল সেট করি তখন। ভ্যালিডেশনসমারি (মিথ্যা) সমস্ত বার্তা প্রদর্শিত হচ্ছে তবে আমি সম্পত্তি ত্রুটিগুলি প্রদর্শন করতে চাই না। আমি কিভাবে এই সমস্যা ঠিক করতে পারবো?
আমি যে কোডটি ব্যবহার করছি তা এখানে:
মডেল:
public class Member
{
[Required(ErrorMessage = "*")]
[DisplayName("Login:")]
public string Login { get; set; }
[Required(ErrorMessage = "*")]
[DataType(DataType.Password)]
[DisplayName("Password:")]
public string Password { get; set; }
[Required(ErrorMessage = "*")]
[DataType(DataType.Password)]
[DisplayName("Confirm Password:")]
public string ConfirmPassword { get; set; }
}
নিয়ন্ত্রক:
[HttpPost]
public ActionResult Register(Member member)
{
try
{
if (!ModelState.IsValid)
return View();
MembersManager.RegisterMember(member);
}
catch (Exception ex)
{
ModelState.AddModelError("error", ex.Message);
return View(member);
}
}
দেখুন:
<% using (Html.BeginForm("Register", "Members", FormMethod.Post,
new { enctype = "multipart/form-data" })) {%>
<p>
<%= Html.LabelFor(model => model.Login)%>
<%= Html.TextBoxFor(model => model.Login)%>
<%= Html.ValidationMessageFor(model => model.Login)%>
</p>
<p>
<%= Html.LabelFor(model => model.Password)%>
<%= Html.PasswordFor(model => model.Password)%>
<%= Html.ValidationMessageFor(model => model.Password)%>
</p>
<p>
<%= Html.LabelFor(model => model.ConfirmPassword)%>
<%= Html.PasswordFor(model => model.ConfirmPassword)%>
<%= Html.ValidationMessageFor(model => model.ConfirmPassword)%>
</p>
<div>
<input type="submit" value="Create" />
</div>
<%= Html.ValidationSummary(true)%>
<% } %>