1
我需要两种模式在我看来。所以,正如我所建议的那样,我创建了两个部分视图:Entete和ChampsFormulaireInvalidite,都与他们的模型。部分查看全视图
我的索引视图使这两种观点:
<head>
<title>Formulaire d'invalidité</title>
</head>
@{Html.RenderAction("Entete");}
@{Html.RenderAction("ChampsFormulaireInvalidite");}
在Entete控制器,我有时也捕捉异常。当它发生时,我希望整个页面被错误页面替换。我尝试这样做:
public PartialViewResult Entete()
{
try{
<some actions>
return PartialView ("Entete", model)
}
catch(Exception){
return PartialView ("Error")
}
}
当然,因为我返回PartialView,只有我的网页上半年显示错误观点,而另一半则显示一个表单(ChampsFormulaireInvalidite视图)。当发生异常时,我希望重定向到完整的错误页面。
有什么建议吗?
我试图把一个尝试catch在我的索引方法,但没有成功:
public ActionResult Index()
{
try{
return View("Index");
}
catch(Exception){return View("Error")}
}
尽可能地,当您想要以接触基础结构(在本例中为视图)的方式处理错误时,请使用“全局”错误处理程序,例如Global.asax中的HandleError属性或Application_Error。 CS。 – 2016-09-28 20:34:26
您的第一个示例是为返回部分视图而编写的,因此您将返回PartialView,从而使错误页面显示为部分视图。除此之外,你从'RenderAction'调用动作,所以无论返回什么,它都会出现在页面中。如果你把它作为一个未处理的异常处理,会发生什么? – Luke