log4net在一个solution多个project下的问题
现有一个solution,里面有3个project:1. Common(里面有数据库访问类) 路径:/SolutionName/Common
2. Common.Test(里面是针对Common的NUnit单元测试类) 路径:/SolutionName/Common.Test
3. WebApp(一个Web Application) 路径:/SolutionName/WebApp
我在Common里面配置了log4net,里面的App.config和AssemblyInfo.cs都做了配置,在Common.Test中做测试一切正常,日志记录到了指定的文件/SolutionName/WebApp/log.txt,但是在WenApp内.aspx页面调用Common中的方法时,log.txt却没有记录下日志,为什么?
下面是数据访问类的部分代码片断:
public class DataAccessFactory
{
private static readonly ILog log = LogManager.GetLogger(typeof(DataAccessFactory));
public static DataAccess CreateDataAccess()
{
log.Info("#### DB Connection opened.");
String connectString = GetConnectString();
return new DataAccess(new SqlConnection(connectString));
}
private static String GetConnectString()
{
log.Info("#### Retrieve Connection String.");
XmlDocument document = new XmlDocument();
if (System.Web.HttpContext.Current != null)
{
//用于Web应用
document.Load(System.Web.HttpContext.Current.Server.MapPath("/web.config"));
}
else
{
//用于单元测试
document.Load("/ParkJob/ParkJob/web.config");
}
XmlNode connstrNode = document.DocumentElement.SelectSingleNode("ParkJob/connstr");
if (connstrNode != null)
{
return ((XmlElement)connstrNode).InnerText;
}
return null;
}
} --------------------编程问答-------------------- 在Global.asax中加
void Application_Start(object sender, EventArgs e)
{
log4net.Config.XmlConfigurator.Configure();
}
补充:.NET技术 , ASP.NET