Creating an XML element with a namespace with XmlDocument.CreateElement()

前端 未结 2 754
孤街浪徒
孤街浪徒 2020-12-04 02:54

I\'m trying to create an XmlDocument using C# and .NET (version 2.0.. yes, version 2.0). I have set the namespace attributes using:

document.Doc         


        
2条回答
  •  孤街浪徒
    2020-12-04 03:02

    You can assign a namespace to your bar element by using XmlDocument.CreateElement Method (String, String, String)

    Example:

    using System;
    using System.Xml;
    
    XmlDocument document = new XmlDocument();
    
    // "foo"                    => namespace prefix
    // "bar"                    => element local name
    // "http://tempuri.org/foo" => namespace URI
    
    XmlElement element = document.CreateElement(
        "foo", "bar", "http://tempuri.org/foo");
    
    document.AppendChild(element);
    Console.WriteLine(document.OuterXml);
    

    Expected Output #1:

    
    

    For a more interesting example, insert these statements before document.AppendChild(element);:

    XmlElement childElement1 = document.CreateElement("foo", "bizz",
        "http://tempuri.org/foo");
    
    element.AppendChild(childElement1);
        
    XmlElement childElement2 = document.CreateElement("foo", "buzz",
        "http://tempuri.org/foo");
    
    element.AppendChild(childElement2);
    

    Expected Output #2:

    
    

    Note that the child elements bizz and buzz are prefixed with the namespace prefix foo, and that the namespace URI http://tempuri.org/foo isn't repeated on the child elements since it is defined within the parent element bar.

提交回复
热议问题