So definieren Sie einen benutzerdefinierten TraceListener in app.config

Ich habe einen benutzerdefinierten Trace - Listener implementiert (abgeleitet vonTextWriteTraceListener) und jetzt möchte ich meine Anwendung so einstellen, dass sie sie anstelle von Standard verwendetTextWriteTraceListener.

Zuerst habe ich default hinzugefügtTextWriteTraceListener um sicherzustellen, dass es funktioniert und es funktioniert. Hier ist meine app.config:

<configuration>
    <system.diagnostics>
        <trace autoflush="true" indentsize="4">
            <listeners>
                <add name="TextListener"  type="System.Diagnostics.TextWriterTraceListener" initializeData="trace.log" />
            <remove name="Default" />
            </listeners>
        </trace>
    </system.diagnostics>
</configuration>

Jetzt ist mein Trace Listener in definiertMyApp.Utils Namespace und es heißtFormattedTextWriterTraceListener. Also habe ich den Typ in der obigen Konfiguration auf geändertMyApp.Utils.FormattedTextWriterTraceListener und so sieht es aktuell aus:

<configuration>
    <system.diagnostics>
        <trace autoflush="true" indentsize="4">
            <listeners>
                <add name="MyTextListener" type="MyApp.Utils.FormattedTextWriterTraceListener" initializeData="trace.log" />
            <remove name="Default" />
            </listeners>
        </trace>
    </system.diagnostics>
</configuration>

Wenn ich jedoch versuche, etwas zu protokollieren, erhalte ich eineConfigurationErrorsException mit der Nachricht:

Der Typ für die Klasse MyApp.Utils.FormattedTextWriterTraceListener wurde nicht gefunden.

Weiß jemand, wie ich diesen benutzerdefinierten Listener in der Konfiguration einrichten kann und ob es überhaupt möglich ist?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage