2009-12-01 19 views
0

我们有一个复杂的客户端 - 服务器应用程序,它使用.NET Framework开发并使用SQL Server 2005.我们使用LinqToSql,但是我们管理所有连接的生命周期,并将打开的连接传递给任何创建的DataContext。我们还在这款产品中使用了微软WF。 WF建立自己的连接来坚持工作流实例。有什么办法来分析.NET框架?

当服务器运行大约一两天后,我们终止了一些“ReclaimedConnections”,这意味着我们还没有关闭我们一直使用的一些SQL连接。我们已经审查了所有的代码并且使用了可能的意思来确保我们正在关闭我们正在创建的所有连接。由于我们使用这些连接的地方非常少,因此连接保持开放几乎是不可能的。

有什么方法可以找出何时拨打电话SqlConnection.Open()SqlConnection.Close()。我们需要知道何时调用这些方法以及调用者是谁(可能会为此调用堆栈)。

感谢

回答

0

您可以使用包含在Visual Studio dotTracePerformance Profiler

+0

感谢您推荐dotTrace。首先,我尝试了蚂蚁探查器,但它一直在崩溃,所以我无法做任何事情。 dotTrace让我们的服务器应用程序非常慢,但它给了我需要的结果。谢谢 – 2009-12-03 14:38:20

相关问题