writeelementstring

___ answer1176211 ___

Es wird nicht fehlgeschlagen %code% ist nur eine Verknüpfung für %code%

    
___ qstntxt ___

Ich verwende %code% und seine %code% Methode, zum Beispiel:

%Vor%

Die erwartete XML-Ausgabe lautet:

%Vor%

Wenn zum Beispiel inputEmail leer ist, erhalte ich das Ergebnis XML wie folgt:

%Vor%

Ich würde es erwarten:

%Vor%

Was mache ich falsch? Gibt es eine Möglichkeit, mein erwartetes Ergebnis auf einfache Weise mit %code% zu erreichen?

    
___ answer1176214 ___

Ihre Ausgabe ist korrekt. Ein Element ohne Inhalt sollte als %code% geschrieben werden.

Sie können die Verwendung des vollständigen Tags erzwingen, indem Sie WriteFullEndElement ()

aufrufen %Vor%

Das gibt %code% aus, wenn inputEmail leer ist.

Wenn Sie dies mehr als einmal tun möchten, können Sie eine Erweiterungsmethode erstellen:

%Vor%

Dann würde Ihr Code werden:

%Vor%     
___ qstnhdr ___ C #: XmlTextWriter.WriteElementString schlägt bei leeren Zeichenfolgen fehl? ___ tag123c ___ C # (sprich "Cis") ist eine objektorientierte Programmiersprache auf hohem Niveau, die für die Erstellung einer Vielzahl von Anwendungen entwickelt wurde, die auf dem .NET Framework (oder .NET Core) ausgeführt werden. C # ist einfach, leistungsfähig, typsicher und objektorientiert. ___ answer1177621 ___

Ihr Code sollte lauten:

%Vor%

Dies vermeidet Ressourcenlecks im Falle von Ausnahmen und verwendet den richtigen Weg, um einen XmlReader zu erstellen (seit .NET 2.0).

    
___ tag123xml ___ Die XML-Datei (Extensible Markup Language) ist ein flexibles, strukturiertes Dokumentformat, das Codierungsregeln für Menschen und Maschinen definiert. ___ answer32473981 ___

Lassen Sie das hier für den Fall, dass jemand es braucht; denn keine der obigen Antworten löste es für mich oder schien übertrieben zu sein.

%Vor%

Der Trick bestand darin, die XmlWriterSettings.Indent = true festzulegen und sie dem XmlWriter .

Bearbeiten:

Alternativ können Sie auch

verwenden %Vor%

anstelle eines XmlWriterSettings.

    
___ tag123xmltextwriter ___ Stellt einen Writer dar, der eine schnelle, nicht zwischengespeicherte Möglichkeit bietet, Streams zu generieren ___ tag123writeelementesigning ___ hilf uns dieses Wiki zu bearbeiten ___
4
Antworten

C #: XmlTextWriter.WriteElementString schlägt bei leeren Zeichenfolgen fehl?

Ich verwende XmlTextWriter und seine WriteElementString Methode, zum Beispiel: %Vor% Die erwartete XML-Ausgabe lautet: %Vor% Wenn zum Beispiel inputEmail leer ist, erhalte ich das Ergebnis XML wie folgt: %Vor% Ich würde es erwa...
24.07.2009, 07:18