繁体   English   中英

将 TempData 传递给 ActionFilter RedirectToAction

[英]Pass TempData to ActionFilter RedirectToAction

我想通过使用 ActionFilter 为第一个操作中的第二个操作设置一个 ViewBag。

在第一个操作中,我执行以下操作:

TempData["Test"] = "Test"; 
return RedirectToAction("Action2", new { values = values });

然后在 IActionFilter 中:

public class HelpertestActionFilter : IActionFilter
{
    public void OnActionExecuted(ActionExecutedContext context)
    {
    }

    public void OnActionExecuting(ActionExecutingContext context)
    {
        var controller = context.Controller as Controller;
        if (controller != null)
        {
            if (controller.TempData["Test"] != null)
            {
                controller.ViewBag.Notification = controller.TempData["Test"];
            }
        }
    }
}

但在 ActionFilter OnActionExecuting 中,TempData["Test"] 始终为 null。

我关注了这篇文章

经过一些尝试,我的代码中没有错误,除了启动配置。

在 Startup.Configure() 中, app.UseCookiePolicy() 必须在 app.UseMVC() 之后才能按预期工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM