ASP.NET MVC 5动作奇怪的错误(?)

时间:2016-10-13 19:48:47

标签: c# asp.net session asp.net-mvc-5

我有一个非常简单的网站,我是ASP.NET MVC的新手。在帐户控制器中我登录和注销。即使是http帖子,登录工作也很好,用户可以登录,我将userId添加到会话中:

public ActionResult Login()
{
    //Login process ...

    Session.Add("TrakIOLoggedUser", userName);
}

在Logout中我删除了这个Session变量:

public ActionResult Logout()
{
    if (Session["TrakIOLoggedUser"] != null) Session.Remove("TrakIOLoggedUser");
}

现在奇怪的是:当我单击Logout链接时离开网站时没有任何交互它只是重定向到索引,默认操作,似乎控制器中不存在该操作。 当我将动作重命名为其他任何东西时,例如Logoff和我在短时间内登录后点击Logout链接,它会调用Logoff,一切正常,但是再次登录后我再单独停留几分钟(我认为会话过期)它不起作用,就像之前调用Logout一样。

断点未命中,它再次将我重定向到默认操作。在此之后,我可以将其重命名为Logoff或Logout,即使在Visual Studio和Windows重新启动后也无效。就像它记住这些名字一样:D:D

如果我给出一个新名字,如果我不留下它,它会再次起作用。这是什么意思?任何其他不与Session交互的动作都可以随时运行......

有什么建议吗?

0 个答案:

没有答案