Aip*_* He 28 c# log4net connection-string
我使用log4Net作为系统的日志.如果appender类型是Log4Net中的AdoNetAppender,则connectionString节点是必需的.但是,我在我的网站上已经有一个使用Log4Net的connectionString.
如何在log4net配置文件中使用log4Net网站的connStr而不是再次配置相同的connstr?
gus*_*ico 38
这很简单,你只需要替换appender connectionString
配置.
代替连接字符串:
<connectionString value="[Complete Connection]" />
Run Code Online (Sandbox Code Playgroud)
你只需使用connectionStringName
配置:
<connectionStringName value="ApplicationConnection" />
Run Code Online (Sandbox Code Playgroud)
然后你有你的应用程序连接字符串:
<connectionStrings>
<add name="ApplicationConnection" connectionString="Connection" providerName="System.Data.OracleClient" />
</connectionStrings>
Run Code Online (Sandbox Code Playgroud)
不幸的是,您必须拥有connectionType
connectionStringName,例如:
<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" />
...
Run Code Online (Sandbox Code Playgroud)
Nar*_*ade 20
在为您的网站配置log4net后,您可以动态更新AdoNetAppender的ConnectionString,通常在Global.asax中.在您使用XmlConfigutor()
或之后调用配置log4net之后..您可以调用以下方法检查所有AdoNetAppenders并更新所需的connectionString.
private static void ConfigureLog4Net()
{
Hierarchy hierarchy = LogManager.GetRepository() as Hierarchy;
if(hierarchy != null && hierarchy.Configured)
{
foreach(IAppender appender in hierarchy.GetAppenders())
{
if(appender is AdoNetAppender)
{
var adoNetAppender = (AdoNetAppender)appender;
adoNetAppender.ConnectionString = ConfigurationManager.AppSettings["YOURCONNECTIONSTRINGKEY"].ToString();
adoNetAppender.ActivateOptions(); //Refresh AdoNetAppenders Settings
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
您现在可以使用AdoNetAppender的ConnectionStringName属性将其指向应用程序或web.config文件中的命名connectionString:
AdoNetAppender.ConnectionStringName属性
您可以通过继承 AdoNetAppender 来做到这一点。
有关详细信息,请参阅下面的“Ken Burkhardt”博客。
http://kenny-bu.blogspot.com/2011/03/using-connection-string-name-with.html
归档时间: |
|
查看次数: |
16587 次 |
最近记录: |