Freigeben über


XmlTextWriter.WriteQualifiedName-Methode

Schreibt den durch Namespace gekennzeichneten Namen. Diese Methode sucht das Präfix im Gültigkeitsbereich des angegebenen Namespaces.

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

Syntax

'Declaration
Public Overrides Sub WriteQualifiedName ( _
    localName As String, _
    ns As String _
)
'Usage
Dim instance As XmlTextWriter
Dim localName As String
Dim ns As String

instance.WriteQualifiedName(localName, ns)
public override void WriteQualifiedName (
    string localName,
    string ns
)
public:
virtual void WriteQualifiedName (
    String^ localName, 
    String^ ns
) override
public void WriteQualifiedName (
    String localName, 
    String ns
)
public override function WriteQualifiedName (
    localName : String, 
    ns : String
)

Parameter

  • localName
    Der zu schreibende lokale Name.
  • ns
    Der Namespace-URI, der dem Namen zugeordnet werden soll.

Ausnahmen

Ausnahmetyp Bedingung

ArgumentException

localName ist entweder NULL (Nothing in Visual Basic) oder String.Empty.

localName ist kein entsprechend der W3C-Spezifikation für Namespaces gültiger Name.

Hinweise

Hinweis

Die empfohlene Vorgehensweise für die Version Microsoft .NET Framework, Version 2.0 besteht darin, mithilfe der System.Xml.XmlWriter.Create-Methode und der XmlWriterSettings-Klasse XmlWriter-Instanzen zu erstellen. So können Sie alle neuen Features dieser Version in vollem Umfang nutzen. Weitere Informationen finden Sie unter Erstellen von XML-Writern.

Folgender Microsoft Visual C#-Code z. B.:

 writer.Formatting = Formatting.Indented;
 writer.WriteStartElement("root");
  writer.WriteAttributeString("xmlns","x",null,"urn:abc");
  writer.WriteStartElement("item");
  writer.WriteStartAttribute("href",null);
  writer.WriteString("#");
  writer.WriteQualifiedName("test","urn:abc");
  writer.WriteEndAttribute();
  writer.WriteEndElement();
  writer.WriteEndElement();
  writer.Close();

generiert die folgende Ausgabe:

 <root xmlns:x="urn:abc">
  <item href="#x:test"/>
  </root>

Wenn ns dem aktuellen Standardnamespace zugeordnet wird, wird kein Präfix generiert.

Beim Schreiben von Attributwerten generiert diese Methode ein Präfix, wenn ns nicht gefunden wird. Beim Schreiben von Elementinhalt wird eine Ausnahme ausgelöst, wenn ns nicht gefunden wird.

Wenn dieser Writer Namespaces unterstützt (Namespaces ist auf true festgelegt), überprüft diese Methode auch, ob der Name gemäß der W3C-Empfehlung für Namespaces in XML (http://www.w3.org/TR/REC-xml-names) gültig ist.

Beispiel

Im folgenden Beispiel wird ein Teil eines XSD-Schemas geschrieben.

Option Explicit
Option Strict

Imports System
Imports System.IO
Imports System.Xml

Public Class Sample
    Private Shared filename As String = "sampledata.xml"
    Public Shared Sub Main()
        Dim writer As XmlTextWriter = Nothing
        
        writer = New XmlTextWriter(filename, Nothing)
        ' Use indenting for readability.
        writer.Formatting = Formatting.Indented
        
        ' Write the root element.
        writer.WriteStartElement("schema")
        
        ' Write the namespace declarations.
        writer.WriteAttributeString("xmlns", Nothing, "http://www.w3.org/2001/XMLSchema")
        writer.WriteAttributeString("xmlns", "po", Nothing, "https://contoso.com/po")
        
        writer.WriteStartElement("element")
        
        writer.WriteAttributeString("name", "purchaseOrder")
        
        ' Write the type attribute.
        writer.WriteStartAttribute(Nothing, "type", Nothing)
        writer.WriteQualifiedName("PurchaseOrder", "https://contoso.com/po")
        writer.WriteEndAttribute()
        
        writer.WriteEndElement()
        
        ' Write the close tag for the root element.
        writer.WriteEndElement()
        
        ' Write the XML to file and close the writer.
        writer.Flush()
        writer.Close()
        
        ' Read the file back in and parse to ensure well formed XML.
        Dim doc As New XmlDocument()
        ' Preserve white space for readability.
        doc.PreserveWhitespace = True
        ' Load the file.
        doc.Load(filename)
        
        ' Write the XML content to the console.
        Console.Write(doc.InnerXml)
    End Sub 'Main 
End Class 'Sample
using System;
using System.IO;
using System.Xml;

public class Sample
{
  private const string filename = "sampledata.xml";

  public static void Main()
  {
     XmlTextWriter writer = null;

     writer = new XmlTextWriter (filename, null);
     // Use indenting for readability.
     writer.Formatting = Formatting.Indented;
        
     // Write the root element.
     writer.WriteStartElement("schema");

     // Write the namespace declarations.
     writer.WriteAttributeString("xmlns", null,"http://www.w3.org/2001/XMLSchema");
     writer.WriteAttributeString("xmlns","po",null,"https://contoso.com/po");

     writer.WriteStartElement("element");

     writer.WriteAttributeString("name", "purchaseOrder");

     // Write the type attribute.
     writer.WriteStartAttribute(null,"type", null);
     writer.WriteQualifiedName("PurchaseOrder", "https://contoso.com/po");
     writer.WriteEndAttribute();

     writer.WriteEndElement();

     // Write the close tag for the root element.
     writer.WriteEndElement();
             
     // Write the XML to file and close the writer.
     writer.Flush();
     writer.Close();  

     // Read the file back in and parse to ensure well formed XML.
     XmlDocument doc = new XmlDocument();
     // Preserve white space for readability.
     doc.PreserveWhitespace = true;
     // Load the file.
     doc.Load(filename);
    
     // Write the XML content to the console.
     Console.Write(doc.InnerXml);

  }

}
#using <System.Xml.dll>

using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
   XmlTextWriter^ writer = nullptr;
   String^ filename = "sampledata.xml";
   writer = gcnew XmlTextWriter( filename, nullptr );
   
   // Use indenting for readability.
   writer->Formatting = Formatting::Indented;
   
   // Write the root element.
   writer->WriteStartElement( "schema" );
   
   // Write the namespace declarations.
   writer->WriteAttributeString( "xmlns", nullptr, "http://www.w3.org/2001/XMLSchema" );
   writer->WriteAttributeString( "xmlns", "po", nullptr, "https://contoso.com/po" );
   writer->WriteStartElement( "element" );
   writer->WriteAttributeString( "name", "purchaseOrder" );
   
   // Write the type attribute.
   writer->WriteStartAttribute( nullptr, "type", nullptr );
   writer->WriteQualifiedName( "PurchaseOrder", "https://contoso.com/po" );
   writer->WriteEndAttribute();
   writer->WriteEndElement();
   
   // Write the close tag for the root element.
   writer->WriteEndElement();
   
   // Write the XML to file and close the writer.
   writer->Flush();
   writer->Close();
   
   // Read the file back in and parse to ensure well formed XML.
   XmlDocument^ doc = gcnew XmlDocument;
   
   // Preserve white space for readability.
   doc->PreserveWhitespace = true;
   
   // Load the file.
   doc->Load( filename );
   
   // Write the XML content to the console.
   Console::Write( doc->InnerXml );
}
import System.*;
import System.IO.*;
import System.Xml.*;

public class Sample
{
    private static String fileName = "sampledata.xml";

    public static void main(String[] args)
    {
        XmlTextWriter writer = null;
        writer = new XmlTextWriter(fileName, null);

        // Use indenting for readability.
        writer.set_Formatting(Formatting.Indented);

        // Write the root element.
        writer.WriteStartElement("schema");

        // Write the namespace declarations.
        writer.WriteAttributeString("xmlns", null,
            "http://www.w3.org/2001/XMLSchema");
        writer.WriteAttributeString("xmlns", "po", null,
            "https://contoso.com/po");
        writer.WriteStartElement("element");
        writer.WriteAttributeString("name", "purchaseOrder");

        // Write the type attribute.
        writer.WriteStartAttribute(null, "type", null);
        writer.WriteQualifiedName("PurchaseOrder", "https://contoso.com/po");
        writer.WriteEndAttribute();
        writer.WriteEndElement();

        // Write the close tag for the root element.
        writer.WriteEndElement();

        // Write the XML to file and close the writer.
        writer.Flush();
        writer.Close();

        // Read the file back in and parse to ensure well formed XML.
        XmlDocument doc = new XmlDocument();

        // Preserve white space for readability.
        doc.set_PreserveWhitespace(true);

        // Load the file.
        doc.Load(fileName);

        // Write the XML content to the console.
        Console.Write(doc.get_InnerXml());
    } //main 
} //Sample

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

XmlTextWriter-Klasse
XmlTextWriter-Member
System.Xml-Namespace