asp.net-mvc-3 – 显示modelstate错误
|
我有以下代码,但是错误causght没有显示.哪里不对 ? public ActionResult DeleteRateGroup(int id)
{
try
{
RateGroup.Load(id).Delete();
RateGroupListModel list = new RateGroupListModel();
return GetIndexView(list);
}
catch (Exception e)
{
RateGroupListModel model = new RateGroupListModel();
if (e.InnerException != null)
{
if (e.InnerException.Message.Contains("REFERENCE constraint"))
ModelState.AddModelError("Error","The user has related information and cannot be deleted.");
}
else
{
ModelState.AddModelError("Error",e.Message);
}
return RedirectToAction("RateGroup",model);
}
}
@model MvcUI.Models.RateGroupListModel
@{
View.Title = "RateGroup";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>Rate Group</h2>
@Html.ValidationSummary()
@using (Html.BeginForm())
private ActionResult GetIndexView(RateGroupListModel model)
{
return View("RateGroup",model);
}
public ActionResult RateGroup(RateGroupListModel model)
{
return GetIndexView(model);
}
解决方法看起来你正在设置ModelState错误,然后重定向到另一个操作.我确定当你这样做时,ModelState会丢失.通常,您只需从DeleteRateGroup操作直接呈现RateGroup视图,而不需要重定向,如果需要,请传入模型,如下所示: return View("RateGroup",model);
如果您希望ModelState与您进行第二个操作,请查看MvcContrib的ModelStateToTempDataAttribute.这是属性的描述,从MvcContrib源代码的意见:
(编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – ASP.NET MVC中的Razor页面生命周期
- asp.net-mvc – 如何在ASP.NET MVC部分视图中使用匿名列表作
- asp.net-mvc – MVC3如何在ViewModel中将多个复选框绑定到1
- 如何在ASP.NET MVC中扩展ValidationSummary HTML Helper?
- asp.net-mvc-4 – 如何通过ASP.NET MVC中的SimpleMembershi
- 谈基于.net平台开发中的模式窗体
- asp.net-core – 我需要在ASP.NET Core for Cache中调用Add
- asp.net核心 – ASP.NET vNext – 编译代码动态不适合我
- 如何基于.NET Core创建ASP.NET项目,而不是基于完整的框架?
- asp.net-mvc – 具有长不存在的URL的ASP.NET MVC 5 – (HTT
- asp-classic – ASP页面中的msxml3.dll错误“800
- asp.net – .NET VirtualPathProviders和预编译
- asp.net-mvc – 与Microsoft HTTP Client Librar
- asp.net – 如何从System.Web.HttpPostedFileBas
- asp.net-mvc – 如何在共享托管环境中实现ASP.Ne
- asp.net-core – MVC 6 Web Api:解析201上的位置
- 在asp.net core 1.0中如何获取当前url
- asp.net-mvc-3 – 如何在输出缓存中使用动态持续
- 在将所有websocket数据发送到客户端之前,ASP.NET
- webmatrix – ASP.NET页面中的_PageStart.cshtml
