【发布时间】:2014-10-24 09:17:50
【问题描述】:
我在我的 asp.net mvc Web 应用程序中为 AuthorizeAttribute 创建了自己的自定义,并且为了能够在登录后将用户返回到当前 URL,我试图将当前 URL 保存在 TempData 中,然后重定向到登录动作方法,如下-
protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
{
if (!_authorize && !filterContext.HttpContext.Request.IsAjaxRequest())
{
var viewResult = new RedirectResult("/Account/Login");
TempData["returnUrl"] = filterContext.HttpContext.Request.Url.PathAndQuery;
filterContext.HttpContext.Response.TrySkipIisCustomErrors = true;
filterContext.Result = viewResult;
}
但似乎在这种情况下我无法引用 TempData,因为上面的代码会引发以下错误:-
当前上下文中不存在名称“TempData”
谁能给点建议? 谢谢
【问题讨论】:
标签: asp.net asp.net-mvc-4 asp.net-mvc-5 tempdata