如何在 C# ASP.NET WebAPI 中為記錄目的建立日誌篩選器?
操作篩選器用於在操作方法執行之前或之後新增額外的邏輯。OnActionExecuting 和 OnActionExecuted 方法用於在操作方法執行之前或之後新增邏輯。
讓我們建立一個實現記錄一些操作方法執行前後資訊的操作篩選器 LogAttribute。
LogAttribute −
示例
using System;
using System.Diagnostics;
using System.Web.Http.Controllers;
using System.Web.Http.Filters;
namespace DemoWebApplication.Controllers{
public class LogAttribute : ActionFilterAttribute {
public override void OnActionExecuting(HttpActionContext actionContext){
Debug.WriteLine(string.Format("Action Method {0} executing at {1}",
actionContext.ActionDescriptor.ActionName, DateTime.Now.ToShortDateString()),
"Web API Logs");
}
public override void OnActionExecuted(HttpActionExecutedContext
actionExecutedContext){
Debug.WriteLine(string.Format("Action Method {0} executed at {1}",
actionExecutedContext.ActionContext.ActionDescriptor.ActionName,
DateTime.Now.ToShortDateString()), "Web API Logs");
}
}
}控制器操作 −
示例
using System.Web.Http;
namespace DemoWebApplication.Controllers{
public class DemoController : ApiController{
[Log]
public IHttpActionResult Get(){
//Some logic
return Ok();
}
}
}由於我們使用了具有 OnActionExecuting 和 OnActionExecuted 方法實現的 Log 特性,因此日誌資訊將被新增到除錯控制檯。

廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP