This question already has answers here:
Can you pull the connectionString for a log4net AdoNetAppender from elsewhere in a web.config file?

(5个答案)


3年前关闭。




我将log4Net用作系统日志。如果追加器类型为Log4Net中的AdoNetAppender,则connectionString节点是必需的。但是,我在使用Log4Net的网站中已经有一个connectionString。

如何将网站的connStr用于log4Net,而不是在log4net配置文件中再次配置相同的connstr?

最佳答案

这很简单,您只需要替换附加器connectionString配置即可。

代替连接字符串:

<connectionString value="[Complete Connection]" />

您只需要使用connectionStringName配置:
<connectionStringName value="ApplicationConnection" />

然后,您有了应用程序连接字符串:
 <connectionStrings>
     <add name="ApplicationConnection" connectionString="Connection" providerName="System.Data.OracleClient" />
 </connectionStrings>

不幸的是,您必须具有带有connectionStringName的connectionType,例如:
<appender name="AdoNetAppender_Oracle" type="log4net.Appender.AdoNetAppender">
    <connectionType value="System.Data.OracleClient.OracleConnection, System.Data.OracleClient, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
    <connectionStringName value="ApplicationConnection" />
...

关于c# - 我如何将当前网站的connectionString用于log4Net而不是配置[duplicate],我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9723051/

10-12 04:58