ASP.NET跟踪是否适用于MVC2视图?

AUS*_*RJL 6 asp.net asp.net-mvc trace

我有一个VS 2010 MVC2 .NET 4.0 Web应用程序.在Page指令(Trace ="true)和Web.config中都启用了ASP.NET跟踪:

<trace enabled="true" 
       requestLimit="10"
       pageOutput="true"
       traceMode="SortByTime" 
       localOnly="true" 
       writeToDiagnosticsTrace="true"
       />
Run Code Online (Sandbox Code Playgroud)

Web.config中还配置了标准跟踪侦听器:

<trace autoflush="true" indentsize="4">
  <listeners>
    <add name="WebPageTrace" type="System.Web.WebPageTraceListener, System.Web, Version=4.0.30319.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
    <add name="TextWriterTrace" type="System.Diagnostics.TextWriterTraceListener" initializeData="textListener.log" />
  </listeners> 
</trace>
Run Code Online (Sandbox Code Playgroud)

跟踪在控制器中运行良好,但是当我在视图(.aspx)中添加跟踪时,没有任何显示:

<% System.Diagnostics.Trace.WriteLine("Message System.Diagnostics.Trace from View"); %>
<% Page.Trace.Write("Message Page.Trace from View"); %>
Run Code Online (Sandbox Code Playgroud)

这应该有用吗?从视图启用跟踪是否还需要其他东西?

谢谢

Nic*_*ore 1

我相信这个问题已经回答了这个问题。这只是提供的一点答案......

\n\n
\n

当您在 Web 表单中调用 Trace.Write() 时,您正在与 TraceContext 类进行交互。它存在于 ASP.NET MVC 中的 ViewPage 上,但这不是您想要编写跟踪语句的位置。当您\xe2\x80\x99\n 将接力棒传递到视图时\n,\xe2\x80\x99 已经没有\xe2\x80\x99 需要跟踪的逻辑。相反,您\xe2\x80\x99d 喜欢跟踪\n 控制器中嵌入的逻辑

\n
\n