2012-03-30 3 views
0

Ich habe mvc 3-Anwendung, die, wenn eine generische Standard-Wurf neue Ausnahme in Code geworfen wird die Fehlerseite aus Views \ Shared \ error.cshtml angezeigt wird. Dazu wird einfach gemacht <customErrors mode="On"/>.Einstellung (Dies Wie erwartet wird und wie gewünscht)MVC Application FailException ausgelöst Wie zur Anzeige Fehler Seite

Die Anwendung ist in der mittleren Ebene WCF-Dienste, die, wenn diese Dienste FaultException MVC generieren zeigt die Fehlerseite nicht bis es Details zeigt von der Web-Service-Aufruf für den Benutzer auf dem Bildschirm. Alles, was ich tun möchte, ist, den Fehler in meinem Code zu behandeln und dem Benutzer die Error.cshtml zu zeigen. Ich habe versucht, globale Asax zu ändern, aber diese dosent Arbeit.

protected void Application_Error(object sender, EventArgs e) 
    { 
     Exception exception = Server.GetLastError(); 
     if (exception.GetType() == typeof(FaultException)) 
     { 
     throw new Exception("There was a fault exception that i do not want to show details of to user."); 

     } 
    } 

Antwort

0

Versuchen Sie, einen Errorcontroller als asp.net MVC zu schaffen versuchen, den Link, den Sie in der web.config als {-Controller}/{Ansicht} angegeben zu lösen, wenn Sie es angeben, dass die Seite zu ignorieren. Sie können auch ein Attribut anwenden, um Ausnahmen zu behandeln.

0

Sie können auch einen Fehler Controller/Ansicht und in Ihren Fang Block Umleitung auf die benutzerdefinierte Fehlerseite Ihrer Wahl

try 
    { 
     foo.bar()  
    } 
    catch(SpecificException) 
    { 
     RedirectToAction("500", "Error"); 
    } 
erstellen
Verwandte Themen