2010-06-22 12 views
5

Me gustaría configurar ELMAH para un sitio ASP.NET MVC completamente en código. Esto incluye registrar el módulo, establecer el proveedor de registro y las configuraciones, y filtrar excepciones.¿Es posible configurar ELMAH por completo en el código?

La única parte que he logrado hasta ahora son las excepciones de filtro. ¿Alguien más ha descubierto cómo hacer esto? Realmente me gustaría evitar llenar mi archivo de configuración con configuraciones que nunca cambiarán.

+0

Brian - ¿No es que el punto de un archivo de configuración, para guardar cosas que don' ¿cambias alguna vez o a menudo? Las cosas que sí cambian con frecuencia, lo querrías en tu código base. Solo un pensamiento ... – Tommy

+0

Estoy lanzando múltiples instancias de un sistema ASP.NET MVC a muchos clientes. Como tal, me gustaría mantener los archivos de configuración lo más simple posible. –

+0

@Tommy: Creo que hablaste al revés. –

Respuesta

0

ELMAH se ejecuta como un módulo HTTP personalizado y controlador HTTP. De acuerdo con MSDN:

Después de haber creado una clase de controlador HTTP personalizada, debe registrarlo en el archivo Web.config. Esto habilita ASP.NET para llamar al controlador HTTP en el pedido para atender las solicitudes de recursos que tienen el archivo especificado extensión de nombre.

Cómo se registra un controlador HTTP depende de la versión de Internet Information Services (IIS) que aloja su aplicación. Para IIS 6.0, usted registra el controlador utilizando la sección httpHandlers del archivo Web.config . Para IIS 7.0 que se ejecuta en modo Classic , registre el controlador en la sección httpHandlers , y asigne el controlador al archivo Aspnet_isapi.dll. Para IIS 7.0 ejecutándose en el modo integrado , registre el controlador en usando el elemento de controladores en la sección del sistema .ServidorWeb.

Rick Strahl has a blog post donde registra programáticamente un HttpModule. Supongo que podría ser posible usar una técnica similar con ELMAH.

Cuestiones relacionadas