Итак, у меня есть эта настройка безопасности для моего действия с использованием переопределения OnActionExecuting атрибута ActionFilter.
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
RouteValueDictionary routeDeniedUsers = new RouteValueDictionary(new { controller = "Errorhandler", action = "NopeAintAllowed"});
if(user.IsNotAllowed)
throw new System.Security.SecurityException("You are not allowed to access page")
return
try{
///some process
}catch(SecurityException ex){
if(ex != null)
filterContext.Result = new RedirectToRouteResult(routeDeniedUsers);
}
}
Итак, мой вопрос: как я могу отобразить сообщение об ошибке для своего действия "routeDeniedusers", когда туда попадут пользователи? Я бы использовал TempData ["key"], но Visual Studio показывает TempDataDictionary только на всплывающей подсказке (или как вы называете эту вещь, которая показывает синтаксис). Я хотел бы получить доступ к экземпляру SecurityException, но я не знаю, как.
Должен ли я действительно использовать объект SecurityException мимоходом или использовать что-то еще?
Любой совет приветствуется.
Спасибо,
G