zoukankan      html  css  js  c++  java
  • 一个简单的ActionFilter

    [AttributeUsage(AttributeTargets.Class|AttributeTargets.Method,
    Inherited
    =true,AllowMultiple=true)]
    public class LogAttribute :FilterAttribute,IActionFilter,IResultFilter
    {
    public string LogName { get; set; }

    public void Log(string controller, string action, string msg)
    {
    if (!string.IsNullOrEmpty(LogName))
    {
    TextWriter writer
    = new StreamWriter(LogName, true);
    writer.WriteLine(
    "Time:{0}", DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"));
    writer.WriteLine(
    "Controller:{0}", controller);
    writer.WriteLine(
    "Action:{0}", action);
    writer.WriteLine(
    "Msg:{0}", msg);
    writer.WriteLine(
    "System:{0}", System.Environment.OSVersion.Version.ToString());
    writer.WriteLine(
    "ThreadID:{0}", AppDomain.GetCurrentThreadId());
    writer.Close();
    }
    }

    public void OnActionExecuting(ActionExecutingContext filterContext)
    {
    Log(filterContext.RouteData.Values[
    "controller"].ToString(), filterContext.RouteData.Values["action"].ToString(), "Action Executing...");
    }

    public void OnActionExecuted(ActionExecutedContext filterContext)
    {
    Log(filterContext.RouteData.Values[
    "controller"].ToString(), filterContext.RouteData.Values["action"].ToString(), "Action Executed.");
    }

    public void OnResultExecuting(ResultExecutingContext filterContext)
    {
    Log(filterContext.RouteData.Values[
    "controller"].ToString(),
    filterContext.RouteData.Values[
    "action"].ToString(),
    "Result executing...");
    }

    public void OnResultExecuted(ResultExecutedContext filterContext)
    {
    Log(filterContext.RouteData.Values[
    "controller"].ToString(),
    filterContext.RouteData.Values[
    "action"].ToString(),
    "Result executed");
    }

    }
  • 相关阅读:
    一串东西跟着鼠标走
    仿select下拉框
    MD5,DES,RSA
    网站访问量统计
    linux 下 apache启动、停止、重启命令
    Blender绘制大脑表层,并高亮染色
    树莓派搭建LAMP,然后更改根目录
    树莓派使用Samba共享文件夹
    树莓派挂载移动硬盘
    [原创]一种基于Python爬虫和Lucene检索的垂直搜索引擎的实现方法介绍
  • 原文地址:https://www.cnblogs.com/pingjiang/p/1869201.html
Copyright © 2011-2022 走看看