从Global.asax获取安全asp.net_sessionid时,TempData将变为null
我在项目中使用TempData,当使用RedirectToAction重定向到特定操作时,我的TempData将变为null。这是因为我使用以下代码在Global.asax中保护了asp.net_sessionid从Global.asax获取安全asp.net_sessionid时,TempData将变为null,asp.net,asp.net-mvc-4,Asp.net,Asp.net Mvc 4,我在项目中使用TempData,当使用RedirectToAction重定向到特定操作时,我的TempData将变为null。这是因为我使用以下代码在Global.asax中保护了asp.net_sessionid var sessionCookieKey = Response.Cookies.AllKeys .SingleOrDefault(c => c.ToLower() == "asp.net_sessionid"); var sessionCookie = Response
var sessionCookieKey = Response.Cookies.AllKeys
.SingleOrDefault(c => c.ToLower() == "asp.net_sessionid");
var sessionCookie = Response.Cookies.Get(sessionCookieKey);
if (sessionCookie != null)
{
sessionCookie.Secure = true;
}
因此,请帮助我如何保持Tempdata值。您是否正在读取介于两者之间的Tempdata值。如果是,您需要在阅读后说“保存它”,如
TempData。保留(“您的密钥”)
我尝试过此方法,但无效。此外,我还没有读取中间的值。检查上面链接中的代码仅在会话cookie不安全时有效,但在我的情况下,它是安全的。