Die Ansicht 'Fehler' oder sein Master wurde nicht gefunden

Ich habe viel Zeit damit verbracht, eine vergebliche Problemumgehung zu finden, also dachte ich, ich würde sehen, ob hier jemand eine Idee hat.

Ich benutzeElmah in meiner ASP.NET MVC3-Anwendung. Ich verwende genau den gleichen Code aus der akzeptierten Antwort im vorherigen Link.

Ich habe auch diesen Code in meiner Datei "Global.asax", um Fehlerseiten mit der richtigen HTTP-Antwort anzuzeigen:

<code>    /// <summary>
    /// The customErrors functionality provided by ASP.NET results in HTTP 302 redirects occurring which doesn't accurately reflect what the real HTTP code of the response was.
    /// This method can be used to handle specific HTTP codes without an intermediate redirect.
    /// </summary>
    protected void Application_Error() {
        var exception = Server.GetLastError();
        var httpException = exception as HttpException;
        Response.Clear();
        Server.ClearError();
        var routeData = new RouteData();
        routeData.Values["controller"] = "Error";
        routeData.Values["action"] = "Error500";
        Response.StatusCode = 500;

        if (httpException != null) {
            Response.StatusCode = httpException.GetHttpCode();
            Response.TrySkipIisCustomErrors = true;
            switch (Response.StatusCode) {
                case 403:
                    routeData.Values["action"] = "Error403";
                    break;
                case 404:
                    routeData.Values["action"] = "Error404";
                    routeData.Values["message"] = httpException.Message;
                    break;
                case 500:
                    routeData.Values["action"] = "Error500";
                    break;
            }
        }

        IController errorsController = new ErrorController();
        var rc = new RequestContext(new HttpContextWrapper(Context), routeData);
        errorsController.Execute(rc);
    }
</code>

Das Problem tritt auf, wenn ich nicht auf meinem (lokalen) Entwicklungscomputer bin (was mich anfangs zu der Annahme veranlasste, dass dies der Fall war)customErrors verbunden). Wenn eine Ausnahme ausgelöst wird, behandelt Elmah den Fehler und protokolliert ihn korrekt. Ich lande auch auf der richtigen Fehlerseite. Bevor ich jedoch auf die richtige Fehlerseite komme, wird eine weitere Zwischenausnahme protokolliert:

<code>The view 'Error' or its master was not found or no view engine supports the searched locations. The following locations were searched: ~/Views/Articles/Error.aspx ~/Views/Articles/Error.ascx ~/Views/Shared/Error.aspx ~/Views/Shared/Error.ascx ~/Views/Articles/Error.cshtml ~/Views/Articles/Error.vbhtml ~/Views/Shared/Error.cshtml ~/Views/Shared/Error.vbhtml
</code>

ASP.NET versucht, eine Standardfehlerseite zu laden, obwohl ich versuche, damit umzugehen. Hat jemand Ideen, wie man das verhindern kann?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage