Je cherche à intégrer ELMAH dans une application ASP.NET existante pour prendre en charge plus de recherches d'erreurs et pourrait utiliser de l'aide avec les chaînes de connexion . Nous utilisons un seul fichier web.config pour tous les environnements dans lesquels l'application est déployée, et au moment de l'exécution, l'application décide de l'environnement dans lequel elle se trouve, généralement en fonction de l'URL.Elmah - ASP.NET -> Chaînes de connexion multiples -> Définir la chaîne de connexion du journal d'erreurs SQL dans le code
C'est ce qu'un bloc standard voudrait comme pour nous ...
<connectionStrings>
<add name="TESTAppDB" connectionString="Data Source=SQL-T-APPNAME.COMPANY.COM;Initial Catalog=APPNAME;User ID=USER;Password=THEPASS" providerName="System.Data.SqlClient"/>
<add name="CERTAppDB" connectionString="Data Source=SQL-C-APPNAME.COMPANY.COM;Initial Catalog=APPNAME;User ID=USER;Password=THEPASS" providerName="System.Data.SqlClient"/>
<add name="PRODAppDB" connectionString="Data Source=SQL-P-APPNAME.COMPANY.COM;Initial Catalog=APPNAME;User ID=USER;Password=THEPASS" providerName="System.Data.SqlClient"/>
</connectionStrings>
Avec Elmah, il semble que vous avez juste besoin de spécifier le nom de la chaîne de connexion, mais comment puis-je faire dynamiquement lors de l'exécution? Par exemple, si je suis test, je veux ceci:
<elmah>
<errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="TESTAppDB"/>
</elmah>
mais si je suis PROD:
<elmah>
<errorLog type="Elmah.SqlErrorLog, Elmah" connectionStringName="PRODAppDB"/>
</elmah>
EDIT
Les pratiques de déploiement pour les applications web sont bien sur de la portée de ce que j'essaie de faire. J'ai besoin d'une solution de code qui me permette de changer la source de données pour le journal d'erreur d'ELMAH Sql ...
Je ne peux pas changer la manière dont nous déployons des applications Web aujourd'hui. Cela signifie que tout ce qui est dans TEST passe au CERT. Ce qui est en CERT passe à PROD. L'application web doit être capable de déterminer dans quel environnement elle se trouve et fonctionner comme telle ...
Bon Appel sur la possibilité d'attraper le code. Je suis en train de définir CustomConnectionString depuis Global.asax Session_Start et il fonctionne comme un charme! – RSolberg
Merci encore pour votre aide à ce sujet ... Bon travail! – RSolberg
Peut-être des maux de tête de maintenance pour modifier réellement ELMAH. Pouvez-vous juste hériter d'une nouvelle classe de SqlErrorLog et apporter les modifications? –