Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MVC4:身份验证仍然有效,但在应用程序池回收后被重定向到登录页面_C#_Asp.net_Sql Server_Asp.net Mvc 4_Session - Fatal编程技术网

C# MVC4:身份验证仍然有效,但在应用程序池回收后被重定向到登录页面

C# MVC4:身份验证仍然有效,但在应用程序池回收后被重定向到登录页面,c#,asp.net,sql-server,asp.net-mvc-4,session,C#,Asp.net,Sql Server,Asp.net Mvc 4,Session,这很奇怪,在我登录之后,然后应用程序池循环,下一个请求总是将我重定向到登录页面。奇怪的是,我的身份验证仍然有效。为什么我的web会重定向我?如果您将数据保存在会话变量中,则在apppool循环期间,您的身份验证丢失是正常的。您最好将其保存在用户端的cookie中,在服务器端的会话中。我使用sql存储会话,也使用cookie保存身份验证。我甚至用机器密钥加密解密cookies。正如我在问题中所说,我的身份验证cookie没有丢失。在应用程序池被回收后,我仍然可以看到我已登录。唯一的问题是我被重定向

这很奇怪,在我登录之后,然后应用程序池循环,下一个请求总是将我重定向到登录页面。奇怪的是,我的身份验证仍然有效。为什么我的web会重定向我?

如果您将数据保存在会话变量中,则在apppool循环期间,您的身份验证丢失是正常的。您最好将其保存在用户端的cookie中,在服务器端的会话中。我使用sql存储会话,也使用cookie保存身份验证。我甚至用机器密钥加密解密cookies。正如我在问题中所说,我的身份验证cookie没有丢失。在应用程序池被回收后,我仍然可以看到我已登录。唯一的问题是我被重定向到登录页面。这是一个很大的麻烦,如果用户处于重要的事务/表单提交的中间,它可能会失败。