“重定向”后,TempData的值变为空 - c#

重定向后,我遇到有关TempData的问题。

public ActionResult LoginCredentials()
{
    // Calling "SetError()" in catch(), if password mismatch.                        
    try{}

    catch()
    {
      return SetError();
    }   
}

public ActionResult SetError()
{
    // set the value of TempData as "true"                        
    TempData["error"] = true;
    return Redirect("/Login");                
}


public ActionResult Index()
{
    ViewData["useError"]= TempData["error"]; // at this point TempData["error"] is null.
    ...
}

在成功将TempData的SetError()值设置为true的情况下,在“重定向”之后发生问题,值变为“ null”,并且我不能再使用它了。

参考方案

也许浏览器没有Cookie
TempDataDictionary对象中的数据仅在一个请求到下一个请求之间持续存在,除非您使用Keep方法将一个或多个键标记为要保留,并按照代码进行编码(如果您重定向到登录页面,然后重定向到索引),则该值将为空。您只能在登录页面上阅读。

ASP.NET MVC 5自定义登录,无需脚手架,数据库优先 - c#

我对asp.net和mvc还是很陌生,所以我正在努力学习尽可能多的知识...为此,我从头开始编写博客网站,但是我对身份验证和授权有些困惑。由于我倾向于不真正使用任何脚手架的东西,所以我首先要使用数据库,所以不希望asp.net身份为我创建表。我对散列和加盐密码很酷,并对照数据库检查用户,我遇到的麻烦是将用户设置为登录状态并检查他们应该能够访问什么。我真的很想…

ddl在服务器中未更新-asp.net - javascript

我在ASP.NET c#上工作。我有一个DropDownList。 (runat =“ server”)在$ {document).ready上,我更新了它的值:$(document).ready(function () { document.getElementById("ddl").value = "abc"; ……

ASP.NET MVC ExecuteResult与ActionResult - c#

我见过它用来向响应添加标头,然后返回文件进行流传输。public override void ExecuteResult(ControllerContext context) { ... response.AddHeader("Accept-Ranges", "bytes"); response.AddHeader(&…

ASP.NET-如何更改JSON序列化的方式? - javascript

我正在使用ASP.NET通过以下查询返回Json文件:public ActionResult getTransactionTotals(int itemID) { DBEntities db = new DBEntities(); var query = from trans in db.Transactions // Linq query removed …

ASP.NET MVC中应为DataTable返回哪种数据? - javascript

我想为DataTable中的每个页面创建动态加载信息。我正在尝试遵循以下示例:https://www.datatables.net/manual/server-sidehttps://www.datatables.net/manual/data来自示例的代码:$('#example').DataTable( { serverSide: t…