我有一个使用母版页的简单 Web 表单应用程序。
我按照有关如何使迷你分析器工作的说明进行操作。我得到了所有的统计数据。现在我真的不知道如何打开或关闭它。
我想过使用查询字符串并查找它Application_BeginRequest
- 如果它在那里,只需在整个会话中使用探查器.... OK- 会话在那个阶段没有加载,如果使用Application_AcquireRequestState
and 一个静态变量,它会加载它很多次探查器有时会工作,有时不工作,我不知道为什么?
我现在的简单方法是。
protected void Application_BeginRequest(object sender, EventArgs e)
{
MiniProfiler profiler = null;
if (Request.QueryString["p"] != null)
{
profiler = MiniProfiler.Start();
using (profiler.Step("Application_BeginRequest"))
{
}
}
}
这样可以正常工作,但我必须在每个请求上添加一个查询参数。不好。我以前从未使用global.asax
过,所以我不能 100% 确定它是如何工作的。
我可以在预定义的时间内设置变量的最佳方法是什么,以便在我以秘密方式打开它时始终加载分析器?
编辑和解决我的问题
protected void Application_BeginRequest(object sender, EventArgs e)
{
MiniProfiler profiler = null;
if (Request.Cookies["profiler"] != null)
{
profiler = MiniProfiler.Start();
using (profiler.Step("Application_BeginRequest"))
{
}
}
}