When overridden in a derived class, writes out the attribute with the specified local name and value.
Assembly: System.Xml (in System.Xml.dll)
Public Sub WriteAttributeString ( _ localName As String, _ value As String _ )
public void WriteAttributeString( string localName, string value )
public: void WriteAttributeString( String^ localName, String^ value )
member WriteAttributeString : localName:string * value:string -> unit
Parameters
- localName
- Type: System.String
The local name of the attribute.
- value
- Type: System.String
The value of the attribute.
| Exception | Condition |
|---|---|
| InvalidOperationException |
The state of writer is not WriteState.Element or writer is closed. |
| ArgumentException |
The xml:space or xml:lang attribute value is invalid. |
WriteAttributeString does the following:
-
If the attribute value includes double or single quotes, they are replaced with " and ' respectively.
-
If writing an xml:space attribute, the writer verifies the attribute value is valid. (Valid values are preserve or default.)
-
If writing an xml:lang attribute, the writer does not verify that the attribute value is valid according to the W3C XML 1.0 recommendation.
The following example writes out a book.
Option Strict Option Explicit Imports System Imports System.IO Imports System.Xml Public Class Sample Private Shared m_Document As String = "sampledata.xml" Public Shared Sub Main() Dim writer As XmlWriter = Nothing Try Dim settings As XmlWriterSettings = new XmlWriterSettings() settings.Indent = true writer = XmlWriter.Create (m_Document, settings) writer.WriteComment("sample XML fragment") ' Write an element (this one is the root). writer.WriteStartElement("book") ' Write the namespace declaration. writer.WriteAttributeString("xmlns", "bk", Nothing, "urn:samples") ' Write the genre attribute. writer.WriteAttributeString("genre", "novel") ' Write the title. writer.WriteStartElement("title") writer.WriteString("The Handmaid's Tale") writer.WriteEndElement() ' Write the price. writer.WriteElementString("price", "19.95") ' Lookup the prefix and write the ISBN element. Dim prefix As String = writer.LookupPrefix("urn:samples") writer.WriteStartElement(prefix, "ISBN", "urn:samples") writer.WriteString("1-861003-78") writer.WriteEndElement() ' Write the style element (shows a different way to handle prefixes). writer.WriteElementString("style", "urn:samples", "hardcover") ' Write the close tag for the root element. writer.WriteEndElement() ' Write the XML to file and close the writer. writer.Flush() writer.Close() Finally If Not (writer Is Nothing) Then writer.Close() End If End Try End Sub 'Main End Class 'Sample
using System; using System.IO; using System.Xml; public class Sample { private const string m_Document = "sampledata.xml"; public static void Main() { XmlWriter writer = null; try { XmlWriterSettings settings = new XmlWriterSettings(); settings.Indent = true; writer = XmlWriter.Create (m_Document, settings); writer.WriteComment("sample XML fragment"); // Write an element (this one is the root). writer.WriteStartElement("book"); // Write the namespace declaration. writer.WriteAttributeString("xmlns", "bk", null, "urn:samples"); // Write the genre attribute. writer.WriteAttributeString("genre", "novel"); // Write the title. writer.WriteStartElement("title"); writer.WriteString("The Handmaid's Tale"); writer.WriteEndElement(); // Write the price. writer.WriteElementString("price", "19.95"); // Lookup the prefix and write the ISBN element. string prefix = writer.LookupPrefix("urn:samples"); writer.WriteStartElement(prefix, "ISBN", "urn:samples"); writer.WriteString("1-861003-78"); writer.WriteEndElement(); // Write the style element (shows a different way to handle prefixes). writer.WriteElementString("style", "urn:samples", "hardcover"); // Write the close tag for the root element. writer.WriteEndElement(); // Write the XML to file and close the writer. writer.Flush(); writer.Close(); } finally { if (writer != null) writer.Close(); } } }
#using <System.Xml.dll> using namespace System; using namespace System::IO; using namespace System::Xml; public ref class Sample { private: static String^ m_Document = L"sampledata.xml"; public: static void Main() { XmlWriter^ writer = nullptr; try { XmlWriterSettings^ settings = gcnew XmlWriterSettings; settings->Indent = true; writer = XmlWriter::Create( m_Document,settings ); writer->WriteComment( L"sample XML fragment" ); // Write an element (this one is the root). writer->WriteStartElement( L"book" ); // Write the namespace declaration. writer->WriteAttributeString( L"xmlns", L"bk", nullptr, L"urn:samples" ); // Write the genre attribute. writer->WriteAttributeString( L"genre", L"novel" ); // Write the title. writer->WriteStartElement( L"title" ); writer->WriteString( L"The Handmaid's Tale" ); writer->WriteEndElement(); // Write the price. writer->WriteElementString( L"price", L"19.95" ); // Lookup the prefix and write the ISBN element. String^ prefix = writer->LookupPrefix( L"urn:samples" ); writer->WriteStartElement( prefix, L"ISBN", L"urn:samples" ); writer->WriteString( L"1-861003-78" ); writer->WriteEndElement(); // Write the style element (shows a different way to handle prefixes). writer->WriteElementString( L"style", L"urn:samples", L"hardcover" ); // Write the close tag for the root element. writer->WriteEndElement(); // Write the XML to file and close the writer. writer->Flush(); writer->Close(); } finally { if ( writer != nullptr ) writer->Close(); } } }; void main() { Sample::Main(); }
.NET Framework
Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0.NET Framework Client Profile
Supported in: 4, 3.5 SP1Portable Class Library
Supported in: Portable Class LibraryWindows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.