在我的 web.config 中,启用了跟踪。在第一个请求中,页面跟踪显示。然后在第二页上,Trace.IsEnabled 变为 false。我不记得以前见过这种行为。我搜索了所有源代码,但找不到任何可能禁用它的对 Trace 的引用。
引用号。网络配置
<trace enabled="true" localOnly="false" pageOutput="true" />
这是我目前的工作,在 global.asax 中,我添加了这个
protected void Session_Start(object sender, EventArgs e)
{
if(HttpContext.Current.Trace.IsEnabled) //True on 1st request
Session["TraceEnabled"] = true;
然后我将其添加到自定义基本页面的早期事件中。
if (Session["TraceEnabled"] != null)
HttpContext.Current.Trace.IsEnabled = true;
跟踪然后按预期恢复。
为什么跟踪可能会自行关闭?我宁愿解决根本问题,也不愿做一些笨拙的工作。
最佳答案
是否尝试过增加配置文件中的 requestLimit
属性?
<configuration>
<system.web>
<trace enabled="true" pageOutput="false" requestLimit="40" localOnly="false"/>
</system.web>
</configuration>
关于c# - 第二次请求后 HttpContext.Current.Trace.IsEnabled 莫名其妙地变成 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8066802/