Ich glaube, ich habe unsere MVC App eingerichtet, [HandleError]
richtig zu verwenden. Das ist mein Controller:ASP.NET MVC HandleError funktioniert nicht (customErrors ist auf "On" eingestellt)
[HandleError]
public class SupportController : BaseController {
public ActionResult Toss() {
throw new Exception("uh oh");
}
// snip
}
Und ich gesetzt in web.config
meinen customErrors
Tag habe auf "On":
<customErrors mode="On"></customErrors>
Ich bin jedoch immer noch das Gelb Screen of Death auf Ausnahmen zu bekommen. Das Festlegen eines Haltepunkts in meiner Toss()
Aktion zeigt, dass HttpContext.IsCustomErrorEnabled
auf True festgelegt ist.
Wir machen nichts mit der View Engine, und die BaseController
macht auch nichts durcheinander (und andere Controller, die es nicht erweitern, haben das gleiche Problem).
Ich entwickle unter Windows XP und habe das gleiche Problem, wenn die App auf einem Server 2003-Box (IIS 6) bereitgestellt wird.
Ich glaube nicht, gibt es eine Ausnahme auf der error.aspx
Seite:
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<System.Web.Mvc.HandleErrorInfo>" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="errorContent" ContentPlaceHolderID="MainContent" runat="server">
<h2>
Sorry, an error occurred while processing your request.
</h2>
</asp:Content>
Eine Sache, die unterschiedlich sein kann, ist, dass diese App wurde erstellt zurück, wenn MVC Beta die neueste Version war, und wurde auf die aktualisierte RC und dann RTM, wie sie veröffentlicht wurden. Könnte es da etwas verrücktes Setting gegeben haben, das von dort übrig geblieben ist?
Ich kann dies auf andere Anwendungen arbeiten, so bin ich ein wenig verwirrt.
Ist Ihre Seite error.aspx in ~ \ Views \ Support oder ~ \ Views \ Shared? – Talljoe
~ \ Views \ Shared - sogar versucht [HandleError (View = "~/Ansichten/Shared/Error.aspx")] (hat nicht funktioniert) – swilliams