zoukankan      html  css  js  c++  java
  • MVC webapi,Action的分别拦截器

    继承Controller,ApiController的拦截继承的接口不一样

    webapi的拦截器:(继承System.Web.Http)

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Http.Controllers;
    using System.Web.Http.Filters;
    using System.Configuration;
    
    namespace Rongzi.Mi.Mvc
    {
     
        public class IosApproveFilterAttribute : System.Web.Http.Filters.ActionFilterAttribute
        {
            private readonly bool IosApprove = Convert.ToBoolean(ConfigurationManager.AppSettings["IOSApprove"] == null ? "0" : ConfigurationManager.AppSettings["IOSApprove"]);
            public override void OnActionExecuting(HttpActionContext actionContext)
            {
                base.OnActionExecuting(actionContext);
            }
    
    
            public override void OnActionExecuted(HttpActionExecutedContext actionExecutedContext)
            {
                if (IosApprove)
                {
                    actionExecutedContext.ActionContext.Response.Headers.Add("IOSApprove", "true");
                }
                base.OnActionExecuted(actionExecutedContext);
            }
        }
    }

    Controller的拦截:(继承System.Web.Mvc)

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Http.Controllers;
    using System.Configuration;
    using System.Web.Mvc;
    
    namespace Rongzi.Mi.Mvc
    {
    
        public class IosApproveFilterAttribute : System.Web.Mvc.ActionFilterAttribute
        {
            private readonly bool IosApprove = ConfigurationManager.AppSettings["IOSApprove"] == "1" ? true : false;
            public override void OnActionExecuting(ActionExecutingContext actionContext)
            {
                base.OnActionExecuting(actionContext);
                
            }
            public override void OnActionExecuted(ActionExecutedContext actionExecutedContext)
            {
                if (IosApprove)
                {
                    actionExecutedContext.HttpContext.Response.Headers.Add("IOSApprove", "true");
                }
                base.OnActionExecuted(actionExecutedContext);
            }
        }
    }

    可以发现他们的继承抽象类都不一样,虽然名称一样,但是是不同的命名空间。

  • 相关阅读:
    Developers’ Musthave: the new Microsoft AllInOne Code Framework Sample Browser and 3500+ samples
    8774
    DCOM
    9个最棒的代码片段资源网站
    WCF中的几种地址总结
    如何用C#编写DCOM服务器
    C++ DCOM服务器和C#客户端互操作完全解释
    理解Prism中MVVM的Command与CommandParameter
    WCF REST 基础教程
    细说ASP.NET Forms身份认证
  • 原文地址:https://www.cnblogs.com/hongdada/p/7243134.html
Copyright © 2011-2022 走看看