无法获取自定义授权属性以在Web API中工作

时间:2016-10-18 11:24:54

标签: c# asp.net-mvc asp.net-web-api

我创建了自己的授权属性:

public class MyCustomAttribute : AuthorizeAttribute
{

    public override void OnAuthorization(AuthorizationContext filterContext)
    {
        if (Authorize(filterContext))
        {
            return;
        }

        HandleUnauthorizedRequest(filterContext);
    }

    protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
    {
        base.HandleUnauthorizedRequest(filterContext);
    }

    private bool Authorize(AuthorizationContext actionContext)
    {
        return true;
    }

}

然后我装饰了我的控制器

[RoutePrefix("api/service")]
[MyCustom]
public class ServiceController : ApiController
{
}

我在MyCustomAttribute类中设置了断点但是它似乎没有被调用。

如何让自定义属性生效?

我也尝试过滤器在FilterConfig中注册。这不起作用,加上我读到的内容将适用于我的解决方案中的所有方法。

0 个答案:

没有答案