我有一个向导,可以在每个步骤中加载部分视图。当表单生成错误时,它会加载错误页面。但是它会在局部视图中加载FULL错误页面,使其看起来像是一次加载两页。如何重定向到局部视图之外的错误页面?
我在步骤
的底部有这个 try
{
return PartialView("AccountSelection", vm);
}
catch (Exception ex)
{
return View("Error");
}
}
return PartialView();
答案 0 :(得分:1)
就个人而言,我会处理更高级别的错误。您可以在web.config文件中指定错误页面。
<configuration>
<system.web>
<customErrors defaultRedirect="error.aspx" mode="RemoteOnly">
</customErrors>
</system.web>
</configuration>
如果目标只是让页面的一部分显示错误消息,那么您可以创建一个名为&#34;错误&#34;的部分页面。并将其保存在Views / Shared中。然后将代码更改为...
try
{
return PartialView("AccountSelection", vm);
}
catch (Exception ex)
{
return PartialView("Error");
}
}
return PartialView();
答案 1 :(得分:0)
使用RedirectToAction("ErrorAction","ErroController")
。根据您的需要,行动可能在一个单独的控制器中或在同一个控制器中(我认为这是不对的)。您还需要自定义错误操作方法和视图,以便您可以针对不同情况传递不同的消息。