首先参考:http://blog.csdn.net/feiying008/article/details/45440547

有时,我们需要将日志功能作为单独模块,用来以后嫁接到其他项目。

今天就来看看如何将日志作为单独项目。

首先,通过Nuget下载log4net.

然后创建一个类库项目,作为log4net通用项目

如下

AssemblyInfo.cs 增加

  1. [assembly: log4net.Config.XmlConfigurator(ConfigFile="log4net.config", Watch = true)]

LogerHelper:

  1. public class LogerHelper
  2. {
  3. public static readonly log4net.ILog log = log4net.LogManager.GetLogger("WebLog");
  4. public static void WriteLog(string info)
  5. {
  6. if (log.IsInfoEnabled)
  7. {
  8. log.Info(info);
  9. }
  10. }
  11. }

在 看我们的主项目,主项目添加Common的引用。

创建log4net.config文件。

属性中,选择复制到输出目录--> 始终复制

配置信息:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <configuration>
  3. <configSections>
  4. <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
  5. </configSections>
  6. <!--log4net-->
  7. <log4net>
  8. <root>
  9. <appender-ref ref="WebLog" />
  10. </root>
  11. <appender name="WebLog" type="log4net.Appender.RollingFileAppender,log4net">
  12. <file value="Log/" />
  13. <appendToFile value="true" />
  14. <rollingStyle value="Date" />
  15. <datePattern value="yyyy-MM-dd&quot;.log&quot;" />
  16. <maxSizeToRollBackups value="10" />
  17. <maximumFileSize value="5MB" />
  18. <staticLogFileName value="false" />
  19. <layout type="log4net.Layout.PatternLayout,log4net">
  20. <conversionPattern value="%d - %-5level - %c - %m%n" />
  21. </layout>
  22. <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
  23. </appender>
  24. </log4net>
  25. <system.web>
  26. <compilation debug="true" targetFramework="4.5" />
  27. <httpRuntime targetFramework="4.5" />
  28. </system.web>
  29. <runtime>
  30. <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  31. <dependentAssembly>
  32. <assemblyIdentity name="log4net" publicKeyToken="669e0ddf0bb1aa2a" culture="neutral" />
  33. <bindingRedirect oldVersion="0.0.0.0-1.2.15.0" newVersion="1.2.15.0" />
  34. </dependentAssembly>
  35. </assemblyBinding>
  36. </runtime>
  37. </configuration>

然后调用就可以了

  1. public ActionResult Index()
  2. {
  3. LogerHelper.WriteLog("123");
  4. return View();
  5. }

log4net 单独项目的更多相关文章

  1. 浅谈Log4net在项目中如何记录日志

    一    引入背景 在软件开发周期中,无论是开发中,或是测试中,或是上线后,选择合适的工具监控程序的运行状态至关重要,只有如此,才能更好地排查程序问题和检测程序性能问题等.本篇文章主要与大家分享,如何 ...

  2. Log4net 单独创建配置文件(三)

    1.建立ASP.Net空的Web程序,添加Default.aspx窗体 2.添加web配置文件命名为:log4net.config,添加配置 <?xml version="1.0&qu ...

  3. ASP.NET WEB API 帮助文档引用单独项目中的DTO,见面上不显示字段注释问题解决办法

    StackOverFlow上的解决办法: 问题地址

  4. VS2017-NetCore项目整合Log4Net

    1新建NetCore项目,我这里NetCoreSDK版本是2.2.0. 2.进入NuGet程序包官网 : https://www.nuget.org,搜索以下两个包并安装到项目中. Microsoft ...

  5. log4net注意事项

    log4net的配置信息可以直接配置在系统的配置文件中,也可以单独写一个配置文件,文件名随便起,如log4net.config,单独的文件属性“复制到输出目录”应该是true.因为log4net框架会 ...

  6. log4net 使用指南,最常遇到的问题整理。。。

    一.    Log4net特征    Log4net是一个用于.NET开发环境的日志记录组件,由于它的超快及超灵活,很多大型的应用都会用到.    它有如下特点:    1.自定义日志输出级别    ...

  7. log4net 配置文件配置方法

    转自:http://www.dozer.cc/2013/06/log4net-config-file-order/ 最近把项目中所有的日志都改成了 log4net ,同事也蠢蠢欲动,用起了 log4n ...

  8. 我写的一些前端开源项目(均托管到github)

    大部分项目都是平时项目用到的某些功能,觉得有趣或者复用性有点高就提取成一个单独项目来做维护 coffee-tmpl : 一个极简的模板引擎和ejs及underscore的template类似 turn ...

  9. Logging with Log4net (二)

    log4net 是.net 的一款日志记录框架. 它提供了很多的方法来帮助记录日志: 使用起来也比较方便: 选中项目,点击右键,然后选择 Manage NuGet Packages... 安装log4 ...

随机推荐

  1. ASP.NET Core 释放 IDisposable 对象的四种方法

    本文翻译自<Four ways to dispose IDisposables in ASP.NET Core>,由于水平有限,故无法保证翻译完全正确,欢迎指出错误.谢谢! IDispos ...

  2. MVC 5限制所有HTTP请求必须是POST方式

    今天有位同事,提出了这样一个问题,他想限制所有MVC接收到的HTTP请求必须是POST方式. 接下来在下面的内容中,将我想到的方式分享给大家,如果大家有其它的方式,请留言. 一.HttpPostAtt ...

  3. 大牛blog

    分布式: 分布式基础学习[一] —— 分布式文件系统 分布式基础学习[二] —— 分布式计算系统(Map/Reduce) Java分布式应用技术架构介绍

  4. tmux 复制粘贴

    tmux版本(tmux 2.3): $tmux -V 要想让tmux和系统剪贴板之间互相复制粘贴,在linux中需要先安装 xclip: sudo apt-get install xclip 然后在 ...

  5. ASP.NET MVC和ASP.NET Core MVC中获取当前URL/Controller/Action (转载)

    ASP.NET MVC 一.获取URL(ASP.NET通用): [1]获取完整url(协议名+域名+虚拟目录名+文件名+参数) string url=Request.Url.ToString(); [ ...

  6. (转)Ubuntu无法找到add-apt-repository问题的解决方法

    原文 网上查了一下资料,原来是需要 python-software-properties 于是 apt-get install python-software-properties 除此之外还要安装 ...

  7. ListView 控件和 INotifyPropertyChanged 接口

    原文:ListView 控件和 INotifyPropertyChanged 接口 ListView 控件和 DataGridView 控件 ListView 是跟 Winform 中 DataGri ...

  8. 面试4——java进程和线程相关知识

    1.线程和进程的概念.并行和并发的概念

  9. jQuery生成QRcode二维码

    jQuery生成QRcode二维码示例 <!DOCTYPE html> <html> <head> <meta charset="utf-8&quo ...

  10. Ubuntu apt-get提示被锁住

    执行 apt-get 时提示资源被锁住 E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavai ...