Condividi tramite


XmlWriterSettings.NewLineHandling Proprietà

Definizione

Ottiene o imposta un valore che indica se normalizzare le interruzioni di riga nell'output.

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

Valore della proprietà

Uno dei NewLineHandling valori. Il valore predefinito è Replace.

Commenti

Questa impostazione si applica quando si scrivono valori di contenuto di testo o attributo. Ognuno dei valori è descritto di NewLineHandling seguito:

  • L'impostazione Entitize indica all'oggetto di XmlWriter sostituire i nuovi caratteri di riga che non verrebbero altrimenti mantenuti da XmlReader una normalizzazione con entità carattere. Ciò è utile negli scenari di round trip in cui l'output viene letto da una normalizzazione XmlReaderdi . Le regole di normalizzazione aggiuntive si applicano ai valori dell'attributo durante il round trip da \t\n e \r vengono sostituiti con uno spazio nei valori di attributo quando normalizzati in un oggetto XmlReader.

  • L'impostazione Replace indica a di XmlWriter sostituire i nuovi caratteri di riga con i caratteri specifici nella NewLineChars proprietà . Questa impostazione sostituisce anche le nuove righe negli attributi con entità carattere per mantenere i caratteri. È anche il valore predefinito.

  • L'impostazione None indica all'oggetto XmlWriter di lasciare invariato l'input. Questa impostazione viene utilizzata quando non si desidera elaborare alcuna nuova riga. Ciò è utile quando l'output viene letto da un oggetto XmlReader che non esegue alcuna normalizzazione , ad esempio un oggetto XmlTextReader con impostazioni predefinite.

Le tabelle seguenti mostrano l'output del WriteString metodo quando viene fornito con il valore di input a seconda dell'impostazione della NewLineHandling proprietà. Le tabelle mostrano l'output durante la scrittura del contenuto di testo e anche quando si scrive un valore di attributo.

Valore nodo di testo:

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

Valore attributo:

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

Annotazioni

L'oggetto XmlWriter ha il comportamento seguente durante la scrittura di contenuto all'interno di una sezione, un commento o un'istruzione di elaborazione CDATA. Le nuove righe non vengono mai sostituite con le relative entità di carattere, anche quando la NewLineHandling proprietà è impostata su Entitize. Ciò è dovuto al fatto che le entità carattere non sono riconosciute nelle sezioni CDATA, nei commenti o nelle istruzioni di elaborazione. Se la NewLineHandling proprietà è impostata su None o Replace, il comportamento è uguale a quando si scrive un valore di nodo di testo.

Nella tabella seguente viene descritto cosa restituisce una normalizzazione XmlReader per ogni input di spazio vuoto. Per altre informazioni, vedere le sezioni 2.11 e 3.3.3 della raccomandazione W3C XML 1.0.

Tipo di valore \r?\n \n \r \t
Nodo di testo \n \n \n \t
Attribute spazio singolo spazio singolo spazio singolo spazio singolo

Annotazioni

Un lettore di normalizzazione è qualsiasi XmlReader oggetto creato dal XmlReader.Create metodo . Questi oggetti eseguono sempre la normalizzazione dell'interruzione di riga e la normalizzazione completa degli attributi. L'oggetto XmlTextReader può anche essere un lettore di normalizzazione se la relativa Normalization proprietà è impostata su true.

Si applica a