Asp.net-Mvc

Asp.Net MVC 如何記錄所有被呼叫的操作

  • March 27, 2019

我需要能夠記錄從我的 asp.net mvc 應用程序呼叫的所有操作。如何以及什麼是實現這一目標的最佳方式?無論是控制台還是日誌文件,我將其記錄到哪裡都沒有關係。

您可以創建自己的繼承自ActionFilterAttribute的類,然後覆蓋OnActionExecuting方法。

例子

public class LogActionAttribute : ActionFilterAttribute
{
   public override void OnActionExecuting(ActionExecutingContext filterContext)
   {

       var controller = filterContext.RequestContext.RouteData.Values["Controller"];
       var action = filterContext.RequestContext.RouteData.Values["Action"];

       //
       // Perform logging here
       //

       base.OnActionExecuting(filterContext);
   }
}

public class HomeController : Controller
{
   [LogAction]
   public ActionResult Index()
   {

       return View();
   }

}

希望這可以幫助!

引用自:https://stackoverflow.com/questions/32778360