मुझे Html.ValidationSummary से कुछ समस्या है। मैं ValidationSummary में संपत्ति त्रुटियों को प्रदर्शित नहीं करना चाहता। और जब मैं Html.ValidationSummary (true) सेट करता हूं तो यह ModelState के त्रुटि संदेश प्रदर्शित नहीं करता है। जब स्ट्रिंग पर नियंत्रक क्रिया में कुछ अपवाद होता है
MembersManager.RegisterMember(member);
पकड़ अनुभाग मॉडलस्टेट में एक त्रुटि जोड़ता है:
ModelState.AddModelError("error", ex.Message);
लेकिन ValidationSummary इस त्रुटि संदेश को प्रदर्शित नहीं करता है। जब मैं Html.ValidationSummary (गलत) सेट करता हूं, तो सभी संदेश प्रदर्शित हो रहे हैं, लेकिन मैं संपत्ति त्रुटियों को प्रदर्शित नहीं करना चाहता। मैं इस समस्या को कैसे ठीक करुं?
यहाँ कोड का उपयोग कर रहा हूँ:
नमूना:
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)%>
<% } %>