public void DeleteUser(User user)
{
if (!UserExists(user))
throw new ArgumentException("User doesn't exist!");
else
{
MatrixDb.Users.Remove(user);
MatrixDb.SaveChanges();
}
}
我想在页面上以适当的方式显示“ArgumentException”消息;我想在ValidationSummary Helper或Label中使用它,这样当用户面对它时,它们不会被发送到'/'应用程序'页面中的'服务器错误,而是在某些控制器中显示错误,像标签或文本字段。
这甚至可能吗?!因为在引发ArgumentException时显示的服务器页面上,确实显示了那条消息!
答案 0 :(得分:1)
控制器:
[HttpPost]
public ActionResult Test(User user)
{
try
{
Delete(user);
}
catch (Exception e)
{
ViewData["error"] = e.Message; //ViewBag.error = e.Message can be used too
}
return View();
}
查看:
@if (ViewData["error"] != null) //ViewBag.error != null
{
<h2>@ViewData["error"].ToString()</h2> //@ViewBag.error.ToString() if ViewBag is used
}