Domanda

Qualcuno sta usando Castle MonoRail ed ELMAH con successo?

Stiamo usando un numero di resuce per presentare agli utenti messaggi di errore amichevoli, ma se lo facciamo le eccezioni non arrivano mai fino a ELMAH poiché il salvataggio di MonoRail le intercetta.

Idealmente, vogliamo che l'utente veda il salvataggio, ma per l'eccezione essere registrato in ELMAH.

Qualche idea / puntatore?

Saluti,

Jay.

È stato utile?

Soluzione

Dopo aver esaminato i link pubblicati da Macka, ho scritto questo semplice gestore di eccezioni monorotaia:

public class ElmahExceptionHandler : AbstractExceptionHandler {
    public override void Process(IRailsEngineContext context) {
        ErrorSignal.FromCurrentContext().Raise(context.LastException);
    }
}

Quindi l'ho registrato in web.config, sezione monorotaia:

<monorail>
    <extensions>
        <extension type="Castle.MonoRail.Framework.Extensions.ExceptionChaining.ExceptionChainingExtension, Castle.MonoRail.Framework"/>
    </extensions>
    <exception>
        <exceptionHandler type="MyNamespace.ElmahExceptionHandler, MyAssembly"/>
    </exception>
...
</monorail>

E questo è tutto.

Altri suggerimenti

Dopo aver pubblicato anche su Google Gruppi sembra che Atif potrebbe mi hanno indicato nella giusta direzione.

  

Potresti voler esaminare l'errore   segnalazione in ELMAH. È progettato per   scenari in cui si desidera passare un   eccezione attraverso la pipeline ELMAH   anche se viene maneggiato / ingerito.   Ecco alcuni suggerimenti per iniziare   con segnalazione di errore:

           

-Atif

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top