IISExpress对数据库连接的限制

时间:2018-06-01 18:19:49

标签: c# asp.net-mvc ado.net iis-express

开发一个连接到SQL Server 2012并获取一些数据的简单MVC5应用程序。该应用程序的主页上有一个JavaScript

setInterval('myFunction()', 10000);

使用AJAX调用使用数据库中的最新更改重新绑定我的模型。当应用程序部署到服务器时,它按预期运行数天(日志中没有错误),但在开发期间,当IISExpress中托管的应用程序出现错误时:

  

超时已过期。从池中获取连接之前经过的超时时间。这可能是因为所有池连接都在使用中并且达到了最大池大小。

我正在谷歌搜索问题几个小时,所有都指向泄漏的SQL连接或DataReader没有正确关闭,但使用简单的select语句我看到只有一个或两个连接同时打开(并且它们正在及时发布)< / p>

DECLARE  @sp_who2 TABLE(SPID INT,Status VARCHAR(255),
  [Login]  VARCHAR(255),HostName  VARCHAR(255), 
  BlkBy  VARCHAR(255),DBName  VARCHAR(255), 
  Command VARCHAR(255),CPUTime INT, 
  DiskIO INT,LastBatch VARCHAR(255), 
  ProgramName VARCHAR(255),SPID2 INT, 
  REQUESTID INT) 
INSERT INTO @sp_who2 EXEC sp_who2
SELECT      * 
FROM       @sp_who2
WHERE       ProgramName = 'myProgram'
ORDER BY    DBName ASC

我多次验证代码,看到连接和阅读器被关闭并妥善处理。 还有什么可能是错的?或者它只是IIS Express中的一些限制

更新  我的连接字符串如下所示:

connectionString="Data Source=MyDBServer;Database=myDatabase;Trusted_Connection=Yes;Max Pool Size=100; Connection Timeout=30;Application Name=myApplication"

0 个答案:

没有答案