国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - ASP.NET教程 - .Net Core學習教程之在Mvc中簡單的使用日志組件

.Net Core學習教程之在Mvc中簡單的使用日志組件

2020-05-27 13:43反骨仔 ASP.NET教程

這篇文章主要給大家介紹了關于.Net Core學習教程之在Mvc中簡單使用日志組件的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

前言

本文是基于 .Net Core 2.0,只是蜻蜓點水,并非深入淺出。給大家介紹了關于.Net Core在Mvc中使用日志組件的相關內容,分享出供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧

目錄

使用內置的日志組件

簡單過渡到第三方組件 - NLog 

使用內置的日志

下面使用控制器 HomeController.cs 進行演示。

需要 using Microsoft.Extensions.Logging;

方案一:

?
1
2
3
4
5
6
7
8
9
public class HomeController : Controller
 {
  private readonly ILogger _logger ;
 
  public HomeController(ILoggerFactory loggerFactory)
  {
   _logger = loggerFactory.CreateLogger(typeof(HomeController));
  }
 }

方案二:

?
1
2
3
4
5
6
7
8
9
public class HomeController : Controller
 {
  private readonly ILogger _logger ;
 
  public HomeController(ILogger<HomeController> logger)
  {
   _logger = logger;
  }
 }

方案三:

?
1
2
3
4
5
6
7
8
9
public class HomeController : Controller
 {
  private readonly ILogger _logger ;
 
  public HomeController(ILogger logger)
  {
   _logger = logger;
  }
 }

三種都是通過注入的方式獲取日志記錄器對象,在過去,我們會自己獨立封裝類似這些 Debug、Info 和 Error 等不同日志等級的方法,現在我們看看內置的方法是如何使用的? 

在 HomeController 內添加 Index() 方法進行測試。

?
1
2
3
4
5
6
7
8
public IActionResult Index()
  {
   _logger.LogDebug($"測試:{DateTime.Now.ToString(CultureInfo.InvariantCulture)}");
   _logger.LogError($"測試:{DateTime.Now.ToString(CultureInfo.InvariantCulture)}");
   _logger.LogInformation($"測試:{DateTime.Now.ToString(CultureInfo.InvariantCulture)}");
 
   return Json(Guid.NewGuid());
  }

在輸出結果中我們可以看到,不同日志的等級在控制臺中會以不同的顏色進行標注。

.Net Core學習教程之在Mvc中簡單的使用日志組件

每種級別的 Log 都有多個方法重載,如 LogInformation() ,示例演示的代碼中使用的是比較簡單一種,也就是最后一種。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
//
    // 摘要:
    //   Formats and writes an informational log message.
    //
    // 參數:
    //  logger:
    //   The Microsoft.Extensions.Logging.ILogger to write to.
    //
    //  eventId:
    //   The event id associated with the log.
    //
    //  message:
    //   Format string of the log message.
    //
    //  args:
    //   An object array that contains zero or more objects to format.
    public static void LogInformation(this ILogger logger, EventId eventId, string message, params object[] args);
    //
    // 摘要:
    //   Formats and writes an informational log message.
    //
    // 參數:
    //  logger:
    //   The Microsoft.Extensions.Logging.ILogger to write to.
    //
    //  exception:
    //   The exception to log.
    //
    //  message:
    //   Format string of the log message.
    //
    //  args:
    //   An object array that contains zero or more objects to format.
    public static void LogInformation(this ILogger logger, Exception exception, string message, params object[] args);
    //
    // 摘要:
    //   Formats and writes an informational log message.
    //
    // 參數:
    //  logger:
    //   The Microsoft.Extensions.Logging.ILogger to write to.
    //
    //  message:
    //   Format string of the log message.
    //
    //  args:
    //   An object array that contains zero or more objects to format.
    public static void LogInformation(this ILogger logger, string message, params object[] args);

其它細節以及詳情,或者希望使用其它日志組件可參考官方文檔:https://docs.microsoft.com/en-us/aspnet/core/fundamentals/logging/?tabs=aspnetcore2x

簡單過渡到第三方組件 - NLog

Nuget 安裝 NLog.Web.AspNetCore(目前 Nuget 最新為 4.4.1,但是官方的教程卻是 4.5 的,小編使用 4.4.1 進行演示)。如需 4.5+ 可參考官方:https://github.com/NLog/NLog.Web/wiki/Getting-started-with-ASP.NET-Core-2

.Net Core學習教程之在Mvc中簡單的使用日志組件

下面演示如何將內置的組件簡單的移植到 NLog 中。

先在根目錄創建配置文件 nlog.config,記得將屬性修改成始終復制到目錄:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   autoReload="true"
   internalLogLevel="info"
   internalLogFile="c:\temp\internal-nlog.txt">
 
 
 <!-- the targets to write to -->
 <targets>
  <!-- write logs to file -->
  <target xsi:type="File" name="allfile" fileName="c:\temp\nlog-all-${shortdate}.log"
      layout="${longdate}|${event-properties:item=EventId_Id}|${uppercase:${level}}|${logger}|${message} ${exception:format=tostring}" />
 
  <!-- another file log, only own logs. Uses some ASP.NET core renderers -->
  <target xsi:type="File" name="ownFile-web" fileName="c:\temp\nlog-own-${shortdate}.log"
      layout="${longdate}|${event-properties:item=EventId_Id}|${uppercase:${level}}|${logger}|${message} ${exception:format=tostring}|url: ${aspnet-request-url}|action: ${aspnet-mvc-action}" />
 </targets>
 
 <!-- rules to map from logger name to target -->
 <rules>
  <!--All logs, including from Microsoft-->
  <logger name="*" minlevel="Trace" writeTo="allfile" />
 
  <!--Skip non-critical Microsoft logs and so log only own logs-->
  <logger name="Microsoft.*" maxLevel="Info" final="true" /> <!-- BlackHole without writeTo -->
  <logger name="*" minlevel="Trace" writeTo="ownFile-web" />
 </rules>
</nlog>

修改 Startup.cs 類中的 Configure() 方法,其它地方都不需要做出任何修改。

?
1
2
3
4
5
6
7
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
    {
      loggerFactory.AddNLog();  //添加NLog
      env.ConfigureNLog("nlog.config");  //讀取Nlog配置文件
 
      //...   
    }

.Net Core學習教程之在Mvc中簡單的使用日志組件

啟動程序,你會發現:

.Net Core學習教程之在Mvc中簡單的使用日志組件

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。

原文鏈接:http://www.cnblogs.com/liqingwen/p/8613538.html

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 亚洲国产传媒99综合 | 午夜黄色影院 | 美女视频黄的免费 | 91av精品视频 | 亚洲国产精品成人 | 久久综合一区二区 | 在线成人免费电影 | 国产精品视频一区二区三区不卡 | 成人高清网站 | 日韩成人在线观看 | 国产一区二区精品在线 | 亚洲一区二区久久 | 国产精品美女久久久久久久久久久 | 免费精品视频一区二区三区 | 精品久久精品 | 天堂av中文在线 | 免费在线一区二区 | 色婷婷一区二区 | 欧美精品一区二区三区中文字幕 | 97天堂| 精品av| 成人国产精品视频 | 一区二区三区四区av | 国产av毛片| 国内自拍网站 | 九九精品视频观看 | 狼人综干网 | 激情久久久久 | 成人高清视频在线观看 | 日韩一区二区三区在线观看 | 日韩高清在线一区 | 欧美福利 | 欧美一级全黄 | 久久久久久久久久久久福利 | 欧美一区二区在线观看 | 国产精品久久久久久久久久免费动 | 国产免费天天看高清影视在线 | 久久久青草婷婷精品综合日韩 | 欧美成人精品一区二区男人看 | 国产精品一区二区三 | 日韩国产免费观看 |