gpt4 book ai didi

asp.net-mvc - 在 Helper 错误 : The name 'TempData' does not exist in the current context 中使用 TempData

转载 作者:行者123 更新时间:2023-12-04 05:25:44 25 4
gpt4 key购买 nike

我想访问 临时数据 在我的助手中获取闪现消息(如在 ruby​​ 中)

我收到一个运行时错误

The name 'TempData' does not exist in the current context

我的 Flash.cshtml 如下
@helper Show() 
{
var message = "test message";
var className = "info";

if (TempData["info"] != null)
{
message = TempData["info"].ToString();
className = "info";
}
else if (TempData["warning"] != null)
{
message = TempData["warning"].ToString();
className = "warning";
}
else if (TempData["error"] != null)
{
message = TempData["error"].ToString();
className = "error";
}

<script>
$(document).ready(function () {
$('#flash').html('@HttpUtility.HtmlEncode(message)');
$('#flash').toggleClass('@className');
$('#flash').slideDown('slow');
$('#flash').click(function () { $('#flash').toggle('highlight') });
});
</script>
}

在我的布局中
<section id="main">
@Flash.Show()
<div id="flash" style="display: none"></div>
@RenderBody()
</section>

最佳答案

TempData 属于 ControllerBase类是 Controller 的基类,它不能被没有 Controller 的共享 View 访问,

一种可能的解决方法是将 Controller 传递给您的辅助方法或通过 HtmlHelper 访问它。

@helper SomeHelper(HtmlHelper helper)
{
helper.ViewContext.Controller.TempData
}

关于asp.net-mvc - 在 Helper 错误 : The name 'TempData' does not exist in the current context 中使用 TempData,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8762709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com