创建SQL会话状态存储

时间:2012-02-03 12:39:58

标签: asp.net

通过继承SessionStateStoreProviderBase实现了SqlSessionStateStore。创建了dll并将dll放在bin文件夹中(因为我无法使用MS Visual Web Developer 2010 Express将其注册到GAC中)。

并在web.config中添加以下会话状态配置设置。

 <sessionState
      cookieless="true"
      regenerateExpiredSessionId="true"
      mode="Custom"       
      customProvider="SqlSessionProvider">
      <providers>
        <add name="SqlSessionProvider"
            type="Sample.AspNet.Session.SqlSessionStateStore"
             connectionString="SqlConnenctionString"             
             writeExceptionToEventLog="false"/>
      </providers>
    </sessionState>

现在我收到此错误。

分析器错误消息:无法加载类型“Sample.AspNet.Session.SqlSessionStateStore”。 来源错误:

Line 15:       <providers>
Line 16:         <add name="SqlSessionProvider"
Line 17:              type="Sample.AspNet.Session.SqlSessionStateStore"
Line 18:              connectionString="SqlConnenctionString"             
Line 19:              writeExceptionToEventLog="false"/>

任何人都可以帮我解决此错误的原因。

1 个答案:

答案 0 :(得分:1)

存在明显的风险

  1. 您是否有参考Sample.AspNet.Session.SqlSessionStateStore所在的位置
  2. 您是否需要进一步限定命名空间,以及它无法找到它的原因
  3. 我确定您还没有这样做,但如果您从参考网站复制了代码,那么您可能只是保留了Sample.AspNet.Session。 SqlSessionStateStore引用它什么时候不存在,实际上它只是样板代码
  4. 基本上它无法找到您的自定义提供商的引用 - 因此您需要确保该网站可以看到它