我需要找到在特定页面中使用的所有 SP。问题是,它们不是直接从页面调用,而是从其他项目中的其他程序集调用。因此,我需要分析所有代码以找到它们。我只是认为也许存在其他方法?只需在应用程序中运行此页面并捕获 SQL Server 调用的所有时刻?使用 VS 2010、MSSQL 2008、C#、Web 表单。
问问题
3278 次
1 回答
0
我想到了使用 Profiler 来获取应用程序中某些特定页面上的 SP 列表,这是我从两个留下评论的人开发的。在这里,我只是分享一下我如何使用 Profiler 的详细信息:
- 运行探查器
- 选择 TSQ_SPs 模板
- 在事件选择选项卡上选择“显示所有列”复选框
- 在同一页面上只检查一个事件:SP:Completed
- 在列过滤器上为 ApplicationName、DatabaseName、HostName、LoginName 设置过滤器。实际上,仅 DatabaseName 和 HostName 就足够了。HostName 作为我的计算机名,因为我从 VS 本地运行应用程序。
- 将跟踪属性另存为模板。
- 运行跟踪
- 运行应用程序。
- 在加载所需的页面清洁跟踪之前
- 打开页面并按下页面上的不同按钮和控件
- 完成页面上的所有操作后,将 Trace 作为 Trace Table 保存到 db。
运行以下查询:
从 SPTableName 中选择不同的对象名
并获取此页面的 SP 列表。DISTINCT 允许您消除重复的 SP,因为在每个页面上 SP 运行多次。
对每一页重复 9 - 12。
于 2012-10-18T21:23:03.617 回答