您在自定义AuthorizationAttribute中对AuthorizationResult使用什么assymbly引用

时间:2014-08-21 03:51:01

标签: c# authorization windows-authentication

我一直在为这个问题疯狂。我正在为我的网络上的用户创建自定义授权。我正在使用Windows身份验证。我试图按照我在MSDN上找到的一个例子来说明如何做到这一点。唯一的问题是AuthorizationResult给我的类型或命名空间无法找到错误。我尝试过使用System.ComponentModel.DataAnnotations不会清除错误。我需要什么参考?我的控制器也找不到我的customAuthorization类?

这是我的CustomAuthorization的方法类,这里是AuthorizationResult抛出错误

protected override AuthorizationResult IsAuthorized(System.Security.Principal.IPrincipal principal, AuthorizationContext authorizationContext)
    {
        if(authorizationContext.HttpContext.User.IsInRole("hello"))
        {
            return true;
        }

        return base.AuthorizeCore(authorizationContext.HttpContext);
    }

这是我控制器上的电话

[AuthorizeRoleAttribute]//does not find my class
public class HomeController : Controller
{

customAttribute的类定义

public class AuthorizeRoleAttribute : AuthorizeAttribute
{

1 个答案:

答案 0 :(得分:1)

AuthorizationResult 驻留在 System.ServiceModel.DomainServices.Server.dll 中 确保已引用此程序集。它没有拾取你的自定义属性类的原因是它无法编译它缺少程序集...