Я использую MVC4.
Я кодирую этот атрибут клиента, который наследуется от System.Web.Mvc.ActionFilterAttribute
public class AuthorizedAttribute : ActionFilterAttribute
{
public AccessLevel Threshold { get; set; }
public AuthorizedAttribute()
{
Threshold = AccessLevel.Anonymous;
}
public AuthorizedAttribute(AccessLevel threshold)
{
Threshold = threshold;
}
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
//some actions
base.OnActionExecuting(filterContext);
}
}
И я использую его на действии Manage
в моем UserController
public class UserController : Controller
{
[HttpGet]
[Authorized(AccessLevel.Administrator)]
public ViewResult Manage()
{
return View();
}
}
Я поставил точку останова в моем конструкторе атрибутов, в переопределенном методе OnActionExecuting
и в моем UserController
, и когда я вызываю URL-адрес действия через свой браузер в режиме отладки, срабатывает только моя точка останова контроллера, и я попадаю на страницу, даже если я не аутентифицирован. . Что я делаю не так ?
Заранее спасибо.