Export (0) Print
Expand All

XmlWriter.WriteAttributeString Method (String, String)

When overridden in a derived class, writes out the attribute with the specified local name and value.

Namespace:  System.Xml
Assembly:  System.Xml (in System.Xml.dll)

public void WriteAttributeString(
	string localName,
	string value
)

Parameters

localName
Type: System.String

The local name of the attribute.

value
Type: System.String

The value of the attribute.

ExceptionCondition
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.

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 <mscorlib.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;

 public __gc class Sample
 {
private:
   static String* m_Document = S"sampledata.xml";

public:
   static void Main() {

      XmlWriter * writer = 0;

      try {

        XmlWriterSettings * settings = new XmlWriterSettings();
        settings->Indent = true;
        writer = XmlWriter::Create (m_Document);

        writer->WriteComment(S"sample XML fragment");

        // Write an element (this one is the root).
        writer->WriteStartElement(S"book");

        // Write the namespace declaration.
        writer->WriteAttributeString(S"xmlns", S"bk", 0, S"urn:samples");

        // Write the genre attribute.
        writer->WriteAttributeString(S"genre", S"novel");

        // Write the title.
        writer->WriteStartElement(S"title");
        writer->WriteString(S"The Handmaid's Tale");
        writer->WriteEndElement();

        // Write the price.
        writer->WriteElementString(S"price", S"19.95");

        // Lookup the prefix and write the ISBN element.
        String* prefix = writer->LookupPrefix(S"urn:samples");
        writer->WriteStartElement(prefix, S"ISBN", S"urn:samples");
        writer->WriteString(S"1-861003-78");
        writer->WriteEndElement();

        // Write the style element (shows a different way to handle prefixes).
        writer->WriteElementString(S"style", S"urn:samples", S"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 != 0)
           writer->Close();
     }
   }
 };

void main(){
	Sample::Main();
}

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft