LINQ to SQL DB连接未关闭

时间:2010-12-31 20:46:30

标签: asp.net-mvc ajax linq-to-sql stored-procedures

我在asp.net mvc应用程序中使用LINQ to SQL。我通过ajax调用调用存储过程。

2-3个用户的活动连接转到100个活动连接。然后发生服务器超时。

然后我使用IOC -autofac来重用具有datacontext的相同存储库。现在,每个登录用户加一个SQL服务器上的活动连接。 我以前从未见过这个。

  1. 为什么Lin2sql在不使用时不会丢弃连接?
  2. 会在登录会话中调用ajax调用中的存储过程创建新的活动连接吗?
  3. 带有循环和/或waitfor的存储过程是否可以保持打开连接?

1 个答案:

答案 0 :(得分:1)

与L2S上下文对象关联的连接只有在您或GC处理连接对象时才会被删除。它不会因为不活动而被丢弃。

如果您尝试在Using语句中创建上下文对象,它们将被适当地处理掉。