2

有什么方法可以查明 ASP.Net 运行时是否提供了 ASPX 页面的缓存副本或实际经历了页面生命周期?

这是我的问题:

在 IIS 日志文件中看到许多条目已成功提供 (200 OK)。我在 Session_Start 和 Application_BeginRequest() 事件中有一个相应的日志记录代码(Log4Net API),它将每个请求记录到我的数据库中并提供更多详细信息。对于某些应该由 Log4Net 代码创建的情况,我在我的 SQL DB 中没有看到任何相应的条目。

是否有任何日志可用于确定 .NET 工作进程是否提供了缓存副本?此外,如果我的日志记录代码会引发异常,那不会在 IIS 日志中显示为 500 吗?

该代码位于 Windows 2008 Server、IIS 7 上。

PS:如果编码程序集解析事件并登录到数据库可以帮助跟踪这一点?有人可以给我举个例子吗?

4

1 回答 1

1

如果您不想手动添加更多日志记录,那么您可以打开跟踪。要打开跟踪,请打开您的 web.config 并找到 ... 标签。设置enabled="true",保存web.config,然后你可以去http://{your site}/trace.axd查看页面跟踪事件。

您可以通过首先查看页面,然后单击离开并返回到该页面,然后检查跟踪以查看记录的事件的差异来测试是否可以看到缓存调用。您应该在第二个页面视图的跟踪中看到缓存获取。

以下是有关 MS 的这一强大功能的更多信息:http: //msdn.microsoft.com/en-us/library/1y89ed7z (VS.71).aspx

您还可以在代码中使用 Trace.Write 或 Trace.Warn 写入跟踪输出。这是添加一些仅在启用跟踪时才会运行的调试代码的好方法。

HTH,兰斯

于 2010-05-14T07:14:46.663 回答