4 votes

Informations de connexion de la base de données cible Nlog au moment de l'exécution

En utilisant Nlog et une cible de base de données, existe-t-il un moyen de définir les informations de connexion au moment de l'exécution ?

9voto

MaciekTalaska Points 1076

Je me souviens qu'un de mes collègues a fait quelque chose de similaire. Il a trouvé cette réponse : http://nlog-forum.1685105.n2.nabble.com/DDL-for-Database-Table-How-to-set-Connection-String-Programmatically-td5241103.html qui fonctionnait parfaitement bien.

Extrait du lien ci-dessus

La manière la plus simple de remplacer la chaîne de connexion est d'utiliser la méthode suivante GDC :

<target name="db" type="Database" connectionString="${gdc:myConnectionstring}" ... />

Maintenant, dans votre code, vous pouvez simplement faire :

GDC.Set("myConnectionString", "Server=.;database=.....");

Vous pouvez également modifier la cible :

var config = LogManager.Configuration;
var dbTarget = (DatabaseTarget)config.FindTargetByName("db");
dbTarget.ConnectionString = "server=.;...";
LogManager.ReconfigExistingLoggers();

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X