3 Stimmen

Protokollierung in XML-Spalte mit log4net

Ist es möglich, mit dem AdoNetAppender in log4net in eine XML-Spalte im SQL Server zu loggen?

Ich weiß, dass ich die Spalte als Zeichenfolge behandeln und auf diese Weise protokollieren kann:

<parameter>
    <parameterName value="@details" />
    <dbType value="String" />
    <size value="4000" />
    <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%property{Details}" />
    </layout>
</parameter>

Aber ich würde lieber mitloggen:

<parameter>
    <parameterName value="@details" />
    <dbType value="Xml" />
    <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%property{Details}" />
    </layout>
</parameter>

Leider scheint das nicht zu funktionieren.

Ich würde die Protokollierung viel lieber mit dem eigentlichen Datenbanktyp durchführen, anstatt die Tatsache auszunutzen, dass ich podría einfach String verwenden.

2voto

Peter Lillevold Punkte 32995

El DbType.Xml enum-Wert wurde in .Net 2.0 eingeführt. Nach näherer Betrachtung von wie man DBType.Xml mit ADO.NET verwendet es scheint, dass der beste Weg der Übergabe von Daten in eine XML-Spalte ist eigentlich durch die Übergabe von Daten in als String.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X