gpt4 book ai didi

c# - RedirectToAction 错误?

转载 作者:行者123 更新时间:2023-11-30 13:29:34 27 4
gpt4 key购买 nike

我有以下代码:

Controller :

public ActionResult Step1()
{
return View();
}

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Step1(FormCollection form)
{
TempData["messageStatus"] = new Random().Next(1, 1000);
return RedirectToAction("Step1");
}

查看:

<%=TempData["messageStatus"]%>

例如,在第一次查看时我得到了 12345,但是当我第二次请求时,我当然必须得到其他东西而不是 12345 例如 54321 但不是,我得到相同的结果 12345,您如何解释? RedirectToAction 缓存页面?

这意味着我必须将 Guid 放在我的 url 中才能解决缓存问题吗?你怎么看待这个问题?

最佳答案

我猜您遇到了缓存问题。重定向到操作不是问题。 RedirectToAction 所做的只是向您的浏览器发出重定向响应,告诉它请求 Step01。然后你的浏览器请求 Step01。

在这种情况下,您的浏览器可能缓存了 Step01。因此,您需要在 STep01 中添加一个 Response header ,指示它永远不应该被缓存。你可以这样做:

[OutputCache(Location = OutputCacheLocation.None)]
public ActionResult Step1()
{
return View();
}

或者您可以通过传入任意值将随机查询字符串添加到重定向到操作调用。

关于c# - RedirectToAction 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/376130/

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