XmlTextWriter.WriteQualifiedName(String, String) Method
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Writes out the namespace-qualified name. This method looks up the prefix that is in scope for the given namespace.
public:
override void WriteQualifiedName(System::String ^ localName, System::String ^ ns);
public override void WriteQualifiedName (string localName, string? ns);
public override void WriteQualifiedName (string localName, string ns);
override this.WriteQualifiedName : string * string -> unit
Public Overrides Sub WriteQualifiedName (localName As String, ns As String)
- localName
- String
The local name to write.
- ns
- String
The namespace URI to associate with the name.
localName
is either null
or String.Empty
.
localName
is not a valid name according to the W3C Namespaces spec.
The following example writes out a portion of a XSD schema.
#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, "http://contoso.com/po" );
writer->WriteStartElement( "element" );
writer->WriteAttributeString( "name", "purchaseOrder" );
// Write the type attribute.
writer->WriteStartAttribute( nullptr, "type", nullptr );
writer->WriteQualifiedName( "PurchaseOrder", "http://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 );
}
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,"http://contoso.com/po");
writer.WriteStartElement("element");
writer.WriteAttributeString("name", "purchaseOrder");
// Write the type attribute.
writer.WriteStartAttribute(null,"type", null);
writer.WriteQualifiedName("PurchaseOrder", "http://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);
}
}
Option Explicit
Option Strict
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, "http://contoso.com/po")
writer.WriteStartElement("element")
writer.WriteAttributeString("name", "purchaseOrder")
' Write the type attribute.
writer.WriteStartAttribute(Nothing, "type", Nothing)
writer.WriteQualifiedName("PurchaseOrder", "http://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
End Class
Note
Starting with the .NET Framework 2.0, we recommend that you create XmlWriter instances by using the XmlWriter.Create method and the XmlWriterSettings class to take advantage of new functionality.
For example, the following Microsoft Visual C# code:
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();
Generates the following output:
<root xmlns:x="urn:abc">
<item href="#x:test"/>
</root>
If ns
maps to the current default namespace, no prefix is generated.
When writing attribute values, this method generates a prefix if ns
is not found. When writing element content, it throws an exception if ns
is not found.
If this writer supports namespaces (Namespaces is set to true
), this method also checks that the name is valid according to the W3C Namespaces in XML recommendation.
Product | Versions |
---|---|
.NET | Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9 |
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
.NET Standard | 2.0, 2.1 |
.NET feedback
.NET is an open source project. Select a link to provide feedback: