Type Reason InvalidOperationException The XmlWriter.WriteState is WriteState.Closed.
WriteString does the following:
The characters &, <, and > are replaced with &, <, and >, respectively.
The default behavior of an System.Xml.XmlWriter created using erload:System.Xml.XmlWriter.Create is to throw an ArgumentException when attempting to write character values in the range 0x-0x1F (excluding white space characters 0x9, 0xA, and 0xD). These invalid XML characters can be written by creating the System.Xml.XmlWriter with the XmlWriterSettings.CheckCharacters property set to false. Doing so will result in the characters being replaced with numeric character entities (� through �x1F). Additionally, an System.Xml.XmlTextWriter created with the new operator will replace the invalid characters with numeric character entities by default.
Note Microsoft does not encourage the practice of writing invalid XML characters since many applications that consume XML are not designed to handle invalid characters.
If WriteString is called in the context of an attribute value, double and single quotes are replaced with " and ' respectively.
For example, this input string test<item>test is written out as
Example
test<item>test
If text is either null or String.Empty, this method writes a text node with no data content.
For the asynchronous version of this method, see XmlWriter.WriteStringAsync(string).