Question

Quelqu'un utilise-t-il Castle MonoRail et ELMAH avec succès?

Nous utilisons plusieurs résolutions pour présenter aux utilisateurs des messages d'erreur conviviaux, mais si nous procédons ainsi, les exceptions n'atteindront jamais la valeur ELMAH, car le sauvetage MonoRail les intercepte.

Idéalement, nous souhaitons que l'utilisateur voie le sauvetage, mais que l'exception soit enregistrée dans ELMAH.

Des idées / des pointeurs?

A bientôt,

Jay.

Était-ce utile?

La solution

Après avoir consulté les liens mis en ligne par Macka, j’ai écrit ce gestionnaire de exceptions monorail simple:

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

Puis je l'ai enregistré dans web.config, section monorail:

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

Et c'est tout.

Autres conseils

Après avoir également publié sur les groupes Google , on dirait Atif may m'ont dirigé dans la bonne direction.

  

Vous voudrez peut-être examiner l'erreur   la signalisation dans ELMAH. Il est conçu pour   scénarios où vous voulez passer un   exception par le pipeline d'ELMAH   même s'il est manipulé / avalé.   Voici quelques conseils pour commencer   avec signalisation d'erreur:

           

-Atif

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top