我想将log4net用于IIS中托管的WCF服务。
但是要轻松更改设置,我想使用单独的配置文件。
所以我添加到了Web.Config(以及WCF服务库的App.config)
<appSettings>
<add key="log4net_config" value="log4net.config" />
</appSettings>
但是这会导致IIS的当前目录,即
C:\Windows\System32\inetsrv
永远不会有我的log4net.config文件。
但我想将log4net配置为
var configFile = ConfigurationManager.AppSettings["log4net_config"];
var fileInfo = new FileInfo(configFile);
XmlConfigurator.ConfigureAndWatch(fileInfo);
如何配置符合此需求的目录?
答案 0 :(得分:5)
首先,您可以将完整路径放到log4.net配置文件中。
其次,您可以使用System.Web.Hosting.HostingEnvironment.MapPath
来解析"~/log4net.config"