ASP.NET MVC中使用log4net的实现示例

今天自己要弄一个日志记录功能,以前也弄过 但是都忘了,今天又弄了一下 花了几十分钟,在此记录一下

第一步:添加log4net.dll

第二步:配置  示例如下: 我是直接配置在了Web.config下

<?xml version="1.0" encoding="utf-8"?>
<configuration>
 <configSections>
  <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
 </configSections>
 <log4net>
  <logger name="Student">
   <level value="ALL" />
   <appender-ref ref="rollingFile" />
  </logger>
  <appender name="rollingFile" type="log4net.Appender.RollingFileAppender,log4net">
   <File value="log/" />
   <DatePattern value="yyyy-MM-dd".txt"" />
   <StaticLogFileName value="false" />
   <maxSizeRollBackups value="-1" />
   <RollingStyle value="Date" />
   <AppendToFile value="false" />
   <MaximumFileSize value="1024MB" />
   <layout type="log4net.Layout.PatternLayout,log4net">
    <ConversionPattern value="%-38m %-7p %-20d %n" />
   </layout>
  </appender>
 </log4net>

<!--下面的不是!!!-->
 <appSettings>
  <add key="webpages:Version" value="3.0.0.0" />
  <add key="webpages:Enabled" value="false" />
  <add key="ClientValidationEnabled" value="true" />
  <add key="UnobtrusiveJavaScriptEnabled" value="true" />
 </appSettings>
 <system.web>
  <compilation debug="true" targetFramework="4.7.2" />
  <httpRuntime targetFramework="4.7.2" />
 </system.web>

</configuration>

第三步:在Global.asax.cs文件下添加     log4net.Config.XmlConfigurator.Configure(); 如下:

  public class MvcApplication : System.Web.HttpApplication
  {
    protected void Application_Start()
    {
      AreaRegistration.RegisterAllAreas();
      FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
      RouteConfig.RegisterRoutes(RouteTable.Routes);
      BundleConfig.RegisterBundles(BundleTable.Bundles);
      log4net.Config.XmlConfigurator.Configure();
    }
  }

第四步:添加Log帮助类 然后使用即可  这里需要注意的是名字对应 看我的下面代码中的注释

  public class LogHelper
  {
    //Student是你的配置文件 <logger name="Student"> 的name的值
    private static log4net.ILog log = log4net.LogManager.GetLogger("Student");

    public static void Debug(object message, Exception e)
    {
      log.Debug(message, e);
    }

    public static void Debug(object message)
    {
      log.Debug(message);
    }

    public static void Info(object message)
    {
      log.Info(message);
    }

    public static void Warn(object message)
    {
      log.Warn(message);
    }

    public static void Error(object message)
    {
      log.Error(message);
    }

    public static void Error(object message, Exception e)
    {
      log.Error(message, e);
    }

    public static void Log(object message)
    {
      log.Info(message);
    }
  }

配置文件的内容比较简略 详细的自己百度看看其他比较详细的即可

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • asp.net log4net的使用方法

    刚开始接触asp.net,关于日志记录怎么能少,因此简单记录一下log4net的配置和使用,以防以后忘记.   首先引入log4net.dll,关于这个文件自己百度下载下. 然后配置一下有关配置,在web.config中加入在configuration节点下 <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log

  • ASP.NET MVC中使用log4net的实现示例

    今天自己要弄一个日志记录功能,以前也弄过 但是都忘了,今天又弄了一下 花了几十分钟,在此记录一下 第一步:添加log4net.dll 第二步:配置  示例如下: 我是直接配置在了Web.config下 <?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="log4net" type=&q

  • ASP.NET MVC中使用JavaScriptResult的用法示例

    本文实例讲述了ASP.NET MVC中使用JavaScriptResult的用法.分享给大家供大家参考,具体如下: 在页面中我们使用JavaScript来设置id为qubernet的span标签样式,具体代码如下: JS: <script> $(function () { var thisObj = document.getElementById("qubernet"); thisObj.setAttribute("style", "color

  • ASP.NET MVC中异常Exception拦截的深入理解

    一.前言 由于客户端的环境不一致,有可能会造成我们预计不到的异常错误,所以在项目中,友好的异常信息提示,是非常重要的.在asp.net mvc中实现异常属性拦截也非常简单,只需要继承另一个类(System.Web.Mvc.FilterAttribute)和一个接口(System.Web.Mvc.IExceptionFilter),实现接口里面OnException方法,或者直接继承Mvc 提供的类System.Web.Mvc.HandleErrorAttribute. 下面话不多说了,来一起看看

  • Asp.NET MVC中使用SignalR实现推送功能

    一.简介 Signal 是微软支持的一个运行在 Dot NET 平台上的 html websocket 框架.它出现的主要目的是实现服务器主动推送(Push)消息到客户端页面,这样客户端就不必重新发送请求或使用轮询技术来获取消息. 可访问其官方网站:https://github.com/SignalR/ 获取更多资讯. 二.Asp.net SignalR 是个什么东东 Asp.net SignalR是微软为实现实时通信的一个类库.一般情况下,SignalR会使用JavaScript的长轮询(lo

  • ASP.NET MVC中URL地址传参的两种写法

    一.url地址传参的第一种写法 1.通过mvc中默认的url地址书写格式:控制器/方法名/参数 2.实例:http://localhost:39270/RequestDemo/Index/88,默认参数名为id所以名称为id. 如果使用其他名称,后台是无法读取的会报错 二.url地址传参的第二种写法 1.使用?加参数名=参数值的写法,如果有多个参数使用&来连接 http://localhost:39270/RequestDemo/Index?id=88&name=%E5%BC%A0%E4%

  • ASP.NET MVC中的AJAX应用

    一.ASP.NET MVC中的AJAX应用 首先,在ASP.NET MVC中使用自带的ajax功能,必须要导入2个js文件(顺序不能颠倒): ASP.NET MVC提供了2个常用的ajax辅助方法. Ajax.ActionLink 该辅助方法用于在页面上生成具有ajax功能的超链接. 在该辅助方法中有一个AjaxOptions类型的参数,它包括如下属性: Confirm:在发送ajax请求前,弹出确认对话框,该属性就是设置对话框中的提示消息HttpMethod:用于设置请求的类型:Get|Pos

  • ASP.NET MVC中图表控件的使用方法

    微软发布了一个强大的ASP.NET的图表控件,支持丰富的图表选项设置-包括列,点,泡沫,饼图,圆环图,金字塔,漏斗,盒形图,面积,范围,AJAX的互动,以及更多.Microsoft图表控件示例项目包括ASP.NET页的图表样本超过200个.在这篇文章中,我将展示如何在ASP.NET MVC中使用图表控件. 这里介绍一个非常简单的项目,显示了一个类的结果比较.两个字段 - ID(这是唯一的一个学生)和GPA(平均成绩) - 代表一个特定的学生的结果.各种图表结果显示,学生的结果进行比较.我希望把重

  • ASP.NET MVC中使用jQuery时的浏览器缓存问题详解

    介绍 尽管jQuery在浏览器ajax调用的时候对缓存提供了很好的支持,还是有必要了解一下如何高效地使用http协议. 首先要做的事情是在服务器端支持HTTP GET,定义不同的URL输出不同的数据(MVC里对应的就是action).如果要使用同一个地址获取不同的数据,那就不对了,一个HTTP POST也不行因为POST不能被缓存.许多开发人员使用POST主要有2个原因:明确了数据不能被缓存,或者是避免JSON攻击(JSON返回数组的时候可以被入侵). 缓存解释 jQuery全局对象里的ajax

  • Asp.Net MVC中配置Serilog的方法

    一.Serilog介绍 Serilog 是一种非常简便记录log 的处理方式,使用Serilog可以生成本地的text文件, 也可以通过 Seq 来在Web界面中查看具体的log内容. 二.配置方法 接下来就简单的介绍一下在Asp.Net MVC中如何配置是Serilog 生效: 1):下载并且安装Seq,具体的下载URL 为 [http://getseq.net/Download],安装到默认的路径之后,实际上时候启动了一个Win Service,并且监听的端口号默认为 5341. 安装的最后

  • ASP.NET MVC中的视图生成实例分析

    本文实例分析了ASP.NET MVC中的视图生成过程.分享给大家供大家参考.具体如下: 在 ASP.NET MVC 中,我们将前端的呈现划分为三个独立的部分来实现,Controller 用来控制用户的操作,View 用来控制呈现的内容,Model 用来表示处理的数据. 从控制器到视图 通常,在 Controller 中,我们定义多个 Action ,每个 Action 的返回类型一般是 ActionResult,在 Action 处理的最后,我们返回对于视图的调用. 复制代码 代码如下: pub

随机推荐