在WCF之前的.NET(C#)Web服务中,我有一个昂贵的IDisposable资源,我持有静态(实际上是ThreadStatic)引用。 (在内部它拥有一个SqlConnection。)我如何确保在应用程序池刷新时处理它,我是否应该简单地抑制FxCop警告而不用担心它,或者是否有第三个选项?
最初,该服务使用using块打开了每个请求的连接,但由于“连接资源问题”,该设计被拒绝了。
答案 0 :(得分:1)
由于连接资源问题,此设计将被拒绝。如果你以前遇到过问题,你会再次使用它们,因为你现在将使用更多的SqlServer连接(如果它的线程是静态的,那么每个线程将有一个SqlServer,更重要的是 - 一个底层真实连接,即使它没有使用连接并将返回池的底层连接。)