Asp.Net SQL会话模式不会返回JQuery帖子

时间:2014-06-04 13:56:59

标签: c# jquery asp.net sql sql-server

我有一个Asp.net Mvc移动应用程序,前端有jquery编码。它似乎丢失了会话变量,所以我将会话状态从进程内更改为sql server。

我跑了: C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319> aspnet_regsql -S NTST-OH-VRS01 -U dbo -P传递@ 2014 -ssadd -sstype p

并确认ASP服务器中存在ASPState数据库。

我在web.conifg中添加了sessionState:

<sessionState allowCustomSqlDatabase="true" customProvider="DefaultSessionProvider" mode="SQLServer" sqlConnectionString="Server=NTST-OH-VRS01;Database=ASPState;User ID=dbo;Password=pass@2014" timeout="30">
  <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>

并重新启动应用程序池。

现在,当浏览器运行$ .post(url,...,function(result){...})时,它永远不会从Web服务器返回。当我将会话状态更改回进程中时,它再次正常工作。

你们知道我做错了吗?

1 个答案:

答案 0 :(得分:1)

In Process将始终有效,因为这意味着它正在使用Web服务器上的RAM。使用SQL Server可能有点棘手。您可能正在尝试连接到SQL Server。查看请求是否在30秒后返回。另请检查以下内容:

  • 连接字符串是否正确?
  • SQL用户是否可以访问该数据库?
  • 您是否在代码中使用try / catch块并记录异常?