加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

ASP.NET会话状态InProc

发布时间:2020-12-16 06:49:19 所属栏目:asp.Net 来源:网络整理
导读:为什么在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 Cata
为什么在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>
...

(我的问题不是关于什么是LocalDb或为什么有一个示例连接字符串)

它说here InProc意味着会话状态存储在内存中.为什么一旦声明了InProc,你需要指定一个连接字符串?

解决方法

< ConnectionStrings> < SessionState>上方显示的部分section无法连接到sessionState. ConnectionStrings部分用于其他目的,例如当您拥有自己的数据库并且需要连接到它时,此部分仅包含用于MemberShip,Profiles等的数据库的详细信息.

< sessionState> element有自己的设置,用于指定名为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"/>

现在当你使用mode =“InProc”时,则无需设置sqlConnectionString设置.即使设置了,它也不会被使用,因为模式是“InProc”&不是“SQLServer”

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读