Ho errori personalizzati attivati in webconfig e reindirizzamento a "/ Errore/Problemi". Questo funziona come progettato. Elmah sta registrando l'errore. Anche la vista dell'errore viene visualizzata.asp.net mvc 3 ottiene eccezione generata
Il problema è che desidero controllare l'errore generato nell'azione Problemi del mio controller Errore. Quando viene generato un errore, come puoi accedervi dopo che MVC ti ha reindirizzato al gestore di errori personalizzato?
sto buttando un'eccezione se CurrentUser è nullo:
if (CurrentUser == null)
{
var message = String.Format("{0} is not known. Please contact your administrator.", context.HttpContext.User.Identity.Name);
throw new Exception(message, new Exception("Inner Exception"));
}
Voglio essere in grado di accedere a questo nel mio gestore di errore personalizzato ("Error/Trouble"). Come accedi all'eccezione?
Ecco la mia azione guai:
public ActionResult Trouble()
{
return View("Error");
}
Ecco mio punto di vista:
@model System.Web.Mvc.HandleErrorInfo
<h2>
Sorry, an error occurred while processing your request.
</h2>
@if (Model != null)
{
<p>@Model.Exception.Message</p>
<p>@Model.Exception.GetType().Name<br />
thrown in @Model.ControllerName @Model.ActionName</p>
<p>Error Details:</p>
<p>@Model.Exception.Message</p>
}
System.Web.Mvc.HandleErrorInfo è il modello per il mio punto di vista guai ed è vuota. Grazie per l'aiuto.
Vuoi vederlo mentre esegui il debug? – mattytommo
non durante il debug. Voglio che l'azione Problemi verifichi l'errore generato e recuperi il messaggio di errore da mostrare all'utente finale –