.NET-Ablaufverfolgung funktioniert nicht mit Diagnostics.TraceSource, nur mit Diagnostics.Trace

Ich versuche, die .NET-Ablaufverfolgung einzurichten. Ich kann die grundlegende Ablaufverfolgung über System.Diagnostics.Trace zum Laufen bringen, muss jedoch aus komplizierten Gründen die Ablaufverfolgung über System.Diagnostics.TraceSource-Objekte aktivieren (die neue Methode seit .NET 2.0), anstatt System zu verwenden .Diagnostics.Trace. Ich habe alles versucht, aber mit TraceSource will es einfach nicht funktionieren. Ich führe die Ablaufverfolgung in einem ASP.NET-Code-Behind (aspx.cs) durc

Hier sind einige verwandte URLs:

http: //msdn.microsoft.com/en-us/library/ty48b824.asp
http: //msdn.microsoft.com/en-us/library/64yxa344.asp
http: //msdn.microsoft.com/en-us/library/sk36c28t.asp
http: //blogs.msdn.com/b/bclteam/archive/2005/03/15/396431.asp
http: //msdn.microsoft.com/en-us/library/b0ectfxd%28v=VS.100%29.asp



erzeit sollte basierend auf dem Inhalt von web.config eine Verfolgung sowohl zu einer Datei als auch zu der Seite mit folgendem Code durchgeführt werden:

TraceSource ts = new TraceSource("mysource", SourceLevels.All);
Trace.Write("Trace (old way)"); // this one works
ts.TraceInformation("Trace (new way)"); // this one doesn't work
ts.Flush();
ts.Close();

Hier sind die relevanten web.config-Abschnitte:

 <system.diagnostics>
       <trace autoflush="false">
            <listeners> <!-- these listeners activate the "old way" of tracing. -->
                 <add       name="pagelistener" />
                 <add       name="filelistener" />
            </listeners>
       </trace>

       <sources>
            <source name="mysource" switchName="myswitch">
                 <listeners>  <!-- these listeners activate the "new way" -->
                       <add name="pagelistener" />
                       <add name="filelistener" />
                 </listeners>
            </source>
       </sources>


       <sharedListeners> 
            <!-- these are the actual trace listeners -->
            <add
                  name="filelistener"
                 type="System.Diagnostics.TextWriterTraceListener"
                 initializeData="loplog.txt"
                 />
            <add
                 name="pagelistener"
                 traceOutputOptions="none"
                 type="System.Web.WebPageTraceListener, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
                 />
       </sharedListeners>

       <switches>
            <!-- the sources above use this verbose switch -->
            <add name="myswitch" value="Verbose"/>
       </switches>

 </system.diagnostics>
 <system.codedom>
       <!-- this compilers section should not be needed because I added
                 #define TRACE to the .aspx.cs file, however I put this in
                 since it's still not working. -->

       <compilers>
            <compiler
                            language="c#;cs;csharp"
                            extension=".cs"
                            compilerOptions="/d:TRACE"
                            type="Microsoft.CSharp.CSharpCodeProvider, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
                            warningLevel="1"
                            />
       </compilers>
 </system.codedom>

 <system.web>
       <!-- this trace tag should be redundant because I added trace="true" to the aspx file,
                 but I put it in here anyway because this wasn't working. -->
       <trace writeToDiagnosticsTrace="true" enabled="true" pageOutput="true" requestLimit="50" localOnly="true"/>