XmlWriterSettings.NewLineHandling Egenskap

Definition

Hämtar eller anger ett värde som anger om radbrytningar ska normaliseras i utdata.

public:
 property System::Xml::NewLineHandling NewLineHandling { System::Xml::NewLineHandling get(); void set(System::Xml::NewLineHandling value); };
public System.Xml.NewLineHandling NewLineHandling { get; set; }
member this.NewLineHandling : System.Xml.NewLineHandling with get, set
Public Property NewLineHandling As NewLineHandling

Egenskapsvärde

Ett av NewLineHandling värdena. Standardvärdet är Replace.

Kommentarer

Den här inställningen gäller när du skriver textinnehåll eller attributvärden. Vart och ett NewLineHandling av värdena beskrivs nedan:

  • Inställningen Entitize talar om XmlWriter för att ersätta nya radtecken som annars inte skulle bevaras av en normalisering XmlReader med teckenentiteter. Detta är användbart i tur och retur-scenarier där utdata läse av en normalisering XmlReader. Ytterligare normaliseringsregler gäller för attributvärden vid avrundning sedan \t, \n och \r ersätts med ett blanksteg i attributvärden när de normaliseras i en XmlReader.

  • Inställningen Replace anger XmlWriter att nya radtecken ska ersättas med de tecken som anges i NewLineChars egenskapen. Den här inställningen ersätter även nya rader i attribut med teckenentiteter för att bevara tecknen. Det är också standardvärdet.

  • Inställningen None anger XmlWriter att indata ska lämnas oförändrade. Den här inställningen används när du inte vill ha någon ny radbearbetning. Detta är användbart när utdata läss av en XmlReader som inte utför någon normalisering (till exempel en XmlTextReader med standardinställningar.)

Följande tabeller visar utdata för metoden när den WriteString levereras med indatavärdet beroende på egenskapsinställningen NewLineHandling . Tabellerna visar utdata när du skriver textinnehåll och även när du skriver ett attributvärde.

Textnodvärde:

NewLineHandling \r\n \n \r \t
Entitize &#D;\n \n &#D; \t
Replace \r\n \r\n \r\n \t
None \r\n \n \r \t

Attributvärde:

NewLineHandling \r\n \n \r \t
Entitize &#D;&#A; &#A; &#D;
Replace &#D;&#A; &#A; &#D;
None \r\n \n \r \t

Note

XmlWriter Har följande beteende när du skriver innehåll i ett CDATA-avsnitt, en kommentar eller en bearbetningsinstruktion. Nya rader ersätts aldrig med deras teckenentiteter, även om NewLineHandling egenskapen är inställd på Entitize. Det beror på att teckenentiteter inte känns igen i CDATA-avsnitt, kommentarer eller bearbetningsinstruktioner. Om egenskapen NewLineHandling är inställd på None eller Replaceär beteendet detsamma som när du skriver ett textnodvärde.

I följande tabell beskrivs vad en normalisering XmlReader returnerar för varje blankstegsindata. Mer information finns i avsnitten 2.11 och 3.3.3 i W3C XML 1.0-rekommendationen.

Värdetyp \r\n \n \r \t
Textnod \n \n \n \t
Attribute enda blanksteg enda blanksteg enda blanksteg enda blanksteg

Note

En normaliserande läsare är ett XmlReader objekt som skapas av XmlReader.Create metoden. Dessa objekt utför alltid linjebrytningsnormalisering och fullständig normalisering av attribut. Objektet XmlTextReader kan också vara en normaliserande läsare om dess Normalization egenskap är inställd på true.

Gäller för