7
如何从视图中检查是否有特定的密钥的任何错误的ModelState(关键是模型的关键领域)如何检查asp.net mvc中的模型验证错误?
如何从视图中检查是否有特定的密钥的任何错误的ModelState(关键是模型的关键领域)如何检查asp.net mvc中的模型验证错误?
如果你还没有,看看这个维基文章the MVC pattern。
请记住,您的观点是只有应该负责显示数据。因此,您应该尽量将视图中的逻辑数量降至最低。如果可能的话,那么,处理的ModelState错误(如的ModelState错误是失败的模型绑定尝试的结果),在你的控制器:
public class HomeController : Controller
{
public ActionResult Index()
{
if (!ModelState.IsValid)
{
return RedirectToAction("wherever");
}
return View();
}
}
如果你有你的观点来处理的ModelState错误,你可以这样做这样:
<% if (ViewData.ModelState.IsValidField("key")) { %>
model state is valid
<% } %>
但请记住,您可以用您的控制器完成同样的事情,从而从您的视图中删除不必要的逻辑。要做到这一点,你可以放置的ModelState逻辑控制器:
public class HomeController : Controller
{
public ActionResult Index()
{
if (!ModelState.IsValidField("key"))
{
TempData["ErrorMessage"] = "not valid";
}
else
{
TempData["ErrorMessage"] = "valid";
}
return View();
}
}
然后,在你看来,你可以参考TempData的消息,这减轻任何不必要的逻辑决策的看法:
<%= TempData["ErrorMessage"] %>