У меня есть действие под названием EditProfile
. Чтобы обеспечить его, я добавил класс RequireUserLogin
, унаследованный от ActionFilterAttribute
. В OnActionExecuting
, когда я перенаправляю пользователя на страницу входа в систему, перед тем, как перейти на страницу входа, сначала выполните код действия EditProfile
(, который я не ожидаю), и перенаправляю пользователя на страницу входа. Я не хочу приводить код действия. В настоящее время единственным вариантом, который у меня есть, является исключение throw. Есть ли другие варианты. Код:Перенаправление в FileAttribute's OnActionExecuting не работает должным образом
public class RequireUserLogin : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
if (string.IsNullOrEmpty(userID))
{
filterContext.HttpContext.Response.Redirect("http://localhost/test/login");
}
base.OnActionExecuting(filterContext);
}
EditProfile
действия:
[RequireUserLogin()]
public ActionResult EditProfile()
{
....
}
вместо Response.Redirect, я использовал RedirectResult, и он работает нормально. – Adeel