【问题标题】:MVC Redirect from helper class with TempData使用 TempData 从帮助程序类进行 MVC 重定向
【发布时间】:2015-03-28 02:51:00
【问题描述】:

在我的 _Layout.cshtml 中,我有几个 div 用于显示消息。

<div>@TempData["SuccessMessage"]</div>
<div>@TempData["WarningMessage"]</div>
<div>@TempData["ErrorMessage"]</div>

我正在尝试创建一个全局重定向助手类来显示这些消息:

MessageHelper.cs

public static RedirectResult RedirectWithMessage(Controller controller, string messagetype, string url, string message)
{
    controller.ViewData[messagetype] = message;
    return (new RedirectResult(url));
}

来自我的控制器:

return RedirectWithMessage(this, "SuccessMessage", "~/good", "Looks good");
return RedirectWithMessage(this, "WarningMessage", "~/warning", "Ooops a warning");
return RedirectWithMessage(this, "ErrorMessage", "~/error", "Danger an error");

我的重定向很好,但没有来自 TempData 的消息。

我已经在控制器中成功地使用了:

private RedirectResult RedirectWithMessage(string messagetype, string url, string message)
{
    TempData[messagetype] = message;
    return Redirect(url);
}

非常感谢任何帮助...

【问题讨论】:

    标签: c# asp.net-mvc asp.net-mvc-4 redirect tempdata


    【解决方案1】:

    你试过了吗:

    controller.TempData[messagetype] = message;
    

    ViewData 不是您的布局需要的。

    也许我错过了什么。

    【讨论】:

    • 就是这样。简单的。当您进行 16 小时的编码会议时,就会发生这种情况。你开始忽略最简单的事情。谢谢。
    • 如果有机会,请点赞并选择它作为正确答案。这鼓励人们做出贡献
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-04
    • 1970-01-01
    • 2011-08-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多