我们正在使用c#.net v 4.5.1开发一个与SQL数据库(SQL 2008 R2 x64)通信的Windows服务,使用Enterprise Library数据访问块v 6完成与SQL服务器的通信,Windows服务执行文件批量复制过程&更新数据库有关文件副本的状态,我们发现,一旦我们启动服务,连接数就会达到最大值。我们开始收到" Timeout已过期。从池中获取连接之前经过的超时时间。这可能是因为所有池化连接都在使用中并且达到了最大池大小。"
仅当我们通过将代码逻辑部署为Windows服务来运行代码逻辑时才会出现此问题,当我们运行与独立exe(右键单击 - >以管理员身份运行)/非Windows服务完全相同的代码时,连接不超过数据库&我们没有收到上述错误。
调用数据库的代码块在c#"下使用"语句,因此默认情况下应该处理连接池。
请您就我可能错过的调查此问题的方面提出任何建议。
提前致谢。