2013-07-29 69 views
8

我正在处理的ASP.NET MVC网站有一些(Controller派生)“用户”页面和一些(ApiController派生)“api”页面。我可以使用MiniProfiler来测试ASP.NET MVC WebApi网站吗?

该网站使用MiniProfiler来检测“用户”页面,我真的很喜欢它的功能。我希望在“api”页面中具有相同或相似的功能 - 具体而言,是执行的SQL语句的记录,以及所有内容的使用时间。

我看到this link看起来很有前途,其中入口点的URL只是简单地输入到浏览器地址栏中,但这是使用ASP.NET MVC WebApi开箱即用的默认视图。我自己的URL返回一个XML文档(或JSON响应)。

另外,我喜欢的东西,让我摆脱浏览器了,因为我的现实生活中的API调用其它程序启动,我希望能够记录约一整个会话信息而不仅仅是一个请求。

有什么建议吗?

回答

7

您可以让MiniProfiler将其结果记录到数据库,而不是处理结果。此时,您将能够回顾一段时间内的表现(针对会话或终点)。

地址:

MiniProfiler.Settings.Storage = new SqlServerStorage("connection string here"); 

您的设置,它应该开始记录到数据库中。

+1

谢谢。这很好,但为了别人的利益,我认为最好提一下,它不会自动创建数据库 - 您需要创建一个并使用常量Stack中的SQL进行初始化[StackExchange.Profiling.Storage.SqlServerStorage.TableCreationScript '(请参阅GitHub上的MiniProfiler源代码)。可能有这个事实的文件,但我没有找到它。 –

+2

此外,这是一个可视化存储结果的好方法:http://antonvishnyak.wordpress.com/2011/09/07/building-an-mvc-mini-profiler-dashboard/ –

+0

@GaryMcGill我发现文档中MiniProfiler的区域非常薄。我想他们会自动尝试创建这个数据库...感谢您指出! –

相关问题