我正在使用 VS2012 制作 ASP.NET MVC4 但是,我发现我的 localhost:xxx (在调试和网站弹出后)始终保持在固定会话中。例如,我用一个虚拟帐户登录:123,那么每当我重新构建项目甚至关闭 VS2012 并下次打开时,网站都会保持登录为 123。
那是存储在我的 VS2012 中的任何会话吗???
谢谢。
我正在使用 VS2012 制作 ASP.NET MVC4 但是,我发现我的 localhost:xxx (在调试和网站弹出后)始终保持在固定会话中。例如,我用一个虚拟帐户登录:123,那么每当我重新构建项目甚至关闭 VS2012 并下次打开时,网站都会保持登录为 123。
那是存储在我的 VS2012 中的任何会话吗???
谢谢。
解决方案:
ASP.NET 中有不同的会话状态 http://msdn.microsoft.com/en-us/library/ms178586(v=VS.80).aspx
In-Process Mode
默认为<sessionState mode="InProc" timeout="10" />
, 重建项目后会话将被清除
State Server Mode 我们可以用这个,但是记得打开服务——ASP.NET State Service
<sessionState mode="StateServer"
stateConnectionString="tcpip=localhost:42424"
sqlConnectionString="data source=.\SQLEXPRESS; User ID=sa;Password=12345678; Integrated Security=SSPI"
cookieless="false"
timeout="2"
/>
SQL Server 模式我们可以在通过命令创建 DB ASPSate 后使用它,请查看此站点以获取详细信息 - http://www.brianstevenson.com/blog/aspstate-concurrently-running-for-net-1011-and-net- 20
<sessionState mode="SQLServer"
stateConnectionString="tcpip=localhost:63586"
sqlConnectionString="data source=.\SQLEXPRESS; User ID=sa;Password=12345678; Integrated Security=SSPI"
cookieless="false"
timeout="2"
/>
State Server Mode & SQL Server Mode 下的会话在重建项目后不会被清除,有利于开发