use*_*119 4 asp.net session session-state visual-studio
为什么在Visual Studio 2012中创建ASP.NET 4.5 Web窗体项目web.config默认情况下具有以下内容:
...
<connectionStrings>
<add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-Project.Web-20130625130806;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-Project.Web-20130625130806.mdf" />
</connectionStrings>
...
<sessionState mode="InProc" customProvider="DefaultSessionProvider">
<providers>
<add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" />
</providers>
</sessionState>
...
Run Code Online (Sandbox Code Playgroud)
(我的问题不是关于什么是LocalDb或为什么有一个示例连接字符串)
它在这里说这InProc意味着会话状态存储在内存中.为什么一旦你声明了,你需要指定一个连接字符串InProc?
该<ConnectionStrings>部分上方显示的<SessionState>部分没有连接到sessionState.ConnectionStrings部分用于其他目的,例如当您拥有自己的数据库并且需要连接到它时,此部分仅包含用于MemberShip,Profiles等的数据库的详细信息.
该<sessionState >元素有自己的设置,用于指定名为的连接字符串:sqlConnectionString如下所示:
<sessionState mode="Off|InProc|StateServer|SQLServer"
cookieless="true|false"
timeout="number of minutes"
stateConnectionString="tcpip=server:port"
sqlConnectionString="sql connection string"
stateNetworkTimeout="number of seconds"/>
Run Code Online (Sandbox Code Playgroud)
现在当你使用mode ="InProc"时,则无需设置sqlConnectionString设置.即使设置了它,它也不会被用作Mode是"InProc"而不是"SQLServer"
| 归档时间: |
|
| 查看次数: |
4497 次 |
| 最近记录: |