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);
        }
    }
}

可以發現他們的繼承抽象類都不一樣,雖然名稱一樣,但是是不同的命名空間。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM