首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >web服务中的log4net问题

web服务中的log4net问题
EN

Stack Overflow用户
提问于 2011-10-27 08:49:00
回答 3查看 1.9K关注 0票数 0

我们在UI层中成功地使用了log4net,但是当我们在Webservice层中进行测试时,它不起作用。

下面是UI层中的代码:

代码语言:javascript
复制
public partial class _Default : System.Web.UI.Page 
{

  ILog logger = log4net.LogManager.GetLogger(typeof(_Default));


  protected void Page_Load(object sender, EventArgs e)
  {
      ServiceReference1.IService1 is1 = new ServiceReference1.Service1Client();
      is1.GetData(1);

      logger.Info("Hello Nine Thanks for use Log4Net,This is info message");
      logger.Debug("Hello Nine Thanks for use Log4Net,This is Debug message");
      logger.Error("Hello Nine Thanks for use Log4Net,This is Error message");
      logger.Warn("Hello Nine Thanks for use Log4Net,This is Warn message");
      logger.Fatal("Hello Nine Thanks for use Log4Net,This is Fatal message");

  }
}

下面是UI层的web.config设置:

代码语言:javascript
复制
<log4net>
    <appender name="FileAppender" type="log4net.Appender.FileAppender">
  <param name="File" value="MyloggerSite2.log"/> <!-- This is logging in app root folder -->

        <param name="AppendToFile" value="true"/>
        <layout type="log4net.Layout.PatternLayout">
            <param name="ConversionPattern" value="%d [%t] %-2p %c [%x] - %m%n"/>

        </layout>
    </appender>
    <root>
  <level value="All"/>
        <appender-ref ref="FileAppender"/>
    </root>
</log4net>

下面是ServiceLayer中的代码,虽然它与上面的大部分代码相同,但它不起作用:

代码语言:javascript
复制
public class Service1 : IService1
{
    public string GetData(int value)
    {
        ILog logger = log4net.LogManager.GetLogger(typeof(Service1));

        logger.Info("Hello Nine Thanks for use Log4Net,This is info message");
        logger.Debug("Hello Nine Thanks for use Log4Net,This is Debug message");
        logger.Error("Hello Nine Thanks for use Log4Net,This is Error message");
        logger.Warn("Hello Nine Thanks for use Log4Net,This is Warn message");
        logger.Fatal("Hello Nine Thanks for use Log4Net,This is Fatal message");

        return string.Format("You entered: {0}", value);
    }
 }

如果你有什么建议,请告诉我。谢谢你,N

EN

回答 3

Stack Overflow用户

发布于 2011-10-27 08:56:50

例如,您是否通过在web服务中具有这样的属性来配置log4net:

代码语言:javascript
复制
[assembly: log4net.Config.XmlConfigurator(Watch=true)]
票数 3
EN

Stack Overflow用户

发布于 2011-10-27 09:56:55

我刚刚在AssemblyInfo.cs中手动添加了这个属性:

装配:log4net.Config.XmlConfigurator(手表=真)

它起作用了。谢谢。

票数 0
EN

Stack Overflow用户

发布于 2013-03-20 10:32:55

只需在服务项目的web配置文件中添加下面的程序集即可。

代码语言:javascript
复制
[assembly: log4net.Config.XmlConfigurator(Watch = true)]
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7913595

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档