在SharePoint 2010中启用会话状态?

Ste*_*ner 9 .net c# session-variables session-state sharepoint-2010

我有一个为SharePoint 2007构建的Web服务,我正在尝试移植到SharePoint 2010.此Web服务依赖于会话状态才能正常运行,但到目前为止,我已启用会话状态在SharePoint 2010中工作这个Web服务在/_vti_bin虚拟目录下作为自己的Web应用程序运行.我没有运气就尝试了以下所有方法:

  • 确保"State Service"服务应用程序正在运行.
  • System.Web.SessionState.SessionStateModulehttp模块添加到我的应用程序的web.config文件中.
  • System.Web.SessionState.SessionStateModulehttp模块添加到我的SharePoint根web.config文件中.
  • 添加<pages enableSessionState="true" />到我的应用程序的web.config文件中.
  • 添加<pages enableSessionState="true" />到我的根web.config文件中.

其他环境信息:

  • Visual Studio 2008 - SP1
  • .NET 3.5 - SP1
  • SharePoint 2010 - RC
  • Windows Server 2008 R2
  • ASMX Web服务(不是WCF)

有没有人有幸运行Web应用程序 Web服务以在SharePoint 2010中使用会话状态?

谢谢!

史蒂夫

Jos*_*hua 11

你已经在互联网上的其他地方自己回答了这个问题.:)

<httpModules> 
  <add name="Session" type="System.Web.SessionState.SessionStateModule" /> 
</httpModules>
Run Code Online (Sandbox Code Playgroud)

那么,您必须进入您的Web应用程序并将相同的会话状态模块添加到IIS7管理的管道.

  1. 打开IIS 7管理器,找到您的Web应用程序.

  2. 双击IIS部分中的"模块".

  3. 单击右侧窗格中的"添加托管模块...".

  4. 在"添加托管模块"对话框中,"SessionState"为名称输入或类似名称,然后从下拉列表中选择以下项目:

    System.Web.SessionState.SessionStateModule,System.Web,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a

之后,应为您的Web应用程序/ Web服务启用会话状态!


小智 6

您可能需要打开会话状态服务.使用PowerShell cmdlet Enable-SPSessionStateService.这将创建会话状态数据库并在SharePoint 2010中启动该服务.

参考信息:http: //technet.microsoft.com/en-us/library/ee890113.aspx