XElement Konstruktory

Definicja

Inicjuje nowe wystąpienie klasy XElement klasy.Initializes a new instance of the XElement class.

Przeciążenia

XElement(XElement)

Inicjuje nowe wystąpienie XElement klasy z innego XElement obiektu.Initializes a new instance of the XElement class from another XElement object.

XElement(XName)

Inicjuje nowe wystąpienie XElement klasy o określonej nazwie.Initializes a new instance of the XElement class with the specified name.

XElement(XStreamingElement)

Inicjuje nowe wystąpienie XElement klasy XStreamingElement z obiektu.Initializes a new instance of the XElement class from an XStreamingElement object.

XElement(XName, Object)

Inicjuje nowe wystąpienie XElement klasy o określonej nazwie i zawartości.Initializes a new instance of the XElement class with the specified name and content.

XElement(XName, Object[])

Inicjuje nowe wystąpienie XElement klasy o określonej nazwie i zawartości.Initializes a new instance of the XElement class with the specified name and content.

Przykłady

Poniższy przykład tworzy drzewo XML.The following example creates an XML tree. Zawartość nowego elementu pochodzi z zapytania LINQ.The content of the new element comes from a LINQ query.

XElement xmlTree1 = new XElement("Root",  
    new XElement("Child", 1),  
    new XElement("Child", 2),  
    new XElement("Child", 3),  
    new XElement("Child", 4),  
    new XElement("Child", 5),  
    new XElement("Child", 6)  
);  
  
XElement xmlTree2 = new XElement("Root",  
    from el in xmlTree1.Elements()  
    where((int)el >= 3 && (int)el <= 5)  
    select el  
);  
Console.WriteLine(xmlTree2);  
Dim xmlTree1 As XElement = _   
        <Root>  
            <Child>1</Child>  
            <Child>2</Child>  
            <Child>3</Child>  
            <Child>4</Child>  
            <Child>5</Child>  
            <Child>6</Child>  
        </Root>  
  
Dim xmlTree2 As XElement = _  
    <Root>  
        <%= From el In xmlTree1.Elements() _  
            Where el.Value >= 3 And el.Value <= 5 _  
            Select el %>  
    </Root>  
  
Console.WriteLine(xmlTree2)  

Ten przykład generuje następujące wyniki:This example produces the following output:

<Root>  
  <Child>3</Child>  
  <Child>4</Child>  
  <Child>5</Child>  
</Root>  

Uwagi

Aby uzyskać szczegółowe informacje o prawidłowej zawartości, którą można przesłać do tego konstruktora, zobacz poprawną zawartość obiektów XElement i XDocument.For details about the valid content that can be passed to this constructor, see Valid Content of XElement and XDocument Objects.

Istnieje niejawna konwersja z ciągu na XName.There is an implicit conversion from string to XName. Typowym zastosowaniem tego konstruktora jest określenie ciągu jako parametru zamiast tworzenia nowego XName.Typical use of this constructor is to specify a string as the parameter instead of creating a new XName.

Podczas tworzenia elementu w przestrzeni nazw typowym zastosowaniem jest użycie przeciążenia operatora dodawania z XNamespace i ciągu w celu XNameutworzenia.When creating an element in a namespace, typical use is to use the addition operator overload with an XNamespace and a string to create an XName. Aby uzyskać więcej informacji, zobacz Praca z przestrzeniami nazw XML.For more information, see Working with XML Namespaces.

XElement(XElement)

Inicjuje nowe wystąpienie XElement klasy z innego XElement obiektu.Initializes a new instance of the XElement class from another XElement object.

public:
 XElement(System::Xml::Linq::XElement ^ other);
public XElement (System.Xml.Linq.XElement other);
new System.Xml.Linq.XElement : System.Xml.Linq.XElement -> System.Xml.Linq.XElement
Public Sub New (other As XElement)

Parametry

other
XElement

XElement Obiekt do skopiowania.An XElement object to copy from.

Przykłady

Poniższy przykład tworzy drzewo XML, tworzy klon drzewa, a następnie wywołuje DeepEqualsmetodę, która sprawdza, czy dwa drzewa XML są równe.The following example creates an XML tree, creates a clone of the tree, and then calls DeepEquals, which tests whether the two XML trees are equal.

XElement xmlTree = new XElement("Root",  
    new XAttribute("Att1", 1),  
    new XElement("Child1", 1),  
    new XElement("Child2", 2)  
);  
  
// Create a clone of the tree.  
XElement treeClone = new XElement(xmlTree);  
  
Console.WriteLine("xmlTree = treeClone: {0}", XNode.DeepEquals(xmlTree, treeClone));  
  
// Do some work with xmlTree, perhaps pass it to other methods.  
xmlTree.Add(new XElement("Child3", 3));  
  
Console.WriteLine("xmlTree = treeClone: {0}", XNode.DeepEquals(xmlTree, treeClone));  
Dim xmlTree As XElement = _  
        <Root Att1="1">  
            <Child1>1</Child1>  
            <Child2>2</Child2>  
        </Root>  
  
' Create a clone of the tree.  
Dim treeClone As XElement = New XElement(xmlTree)  
  
Console.WriteLine("xmlTree = treeClone: {0}", XNode.DeepEquals(xmlTree, treeClone))  
  
' Do some work with xmlTree, perhaps pass it to other methods.  
xmlTree.Add(New XElement("Child3", 3))  
  
Console.WriteLine("xmlTree = treeClone: {0}", XNode.DeepEquals(xmlTree, treeClone))  

Ten przykład generuje następujące wyniki:This example produces the following output:

xmlTree = treeClone: True  
xmlTree = treeClone: False  

Uwagi

Ten konstruktor tworzy głębokie kopie elementu.This constructor makes a deep copy of an element.

Zobacz też

XElement(XName)

Inicjuje nowe wystąpienie XElement klasy o określonej nazwie.Initializes a new instance of the XElement class with the specified name.

public:
 XElement(System::Xml::Linq::XName ^ name);
public XElement (System.Xml.Linq.XName name);
new System.Xml.Linq.XElement : System.Xml.Linq.XName -> System.Xml.Linq.XElement
Public Sub New (name As XName)

Parametry

name
XName

XName , Który zawiera nazwę elementu.An XName that contains the name of the element.

Przykłady

Poniższy przykład tworzy element bez zawartości.The following example creates an element with no content.

XElement el = new XElement("Root");  
Console.WriteLine(el);  
Dim el As XElement = <Root/>  
Console.WriteLine(el)  

Ten przykład generuje następujące wyniki:This example produces the following output:

<Root />  

Poniższy przykład tworzy element w przestrzeni nazw bez zawartości.The following example creates an element in a namespace with no content. Aby uzyskać więcej informacji, zobacz Praca z przestrzeniami nazw XML.For more information, see Working with XML Namespaces.

XNamespace aw = "http://www.adventure-works.com";  
XElement root = new XElement(aw + "Root");  
Console.WriteLine(root);  
Imports <xmlns="http://www.adventure-works.com">  
  
Module Module1  
    Sub Main()  
        Dim root = <Root/>  
        Console.WriteLine(root)  
    End Sub  
End Module  

Ten przykład generuje następujące wyniki:This example produces the following output:

<Root xmlns="http://www.adventure-works.com" />  

Uwagi

Ten konstruktor tworzy element bez żadnej zawartości ani atrybutów.This constructor creates an element with no content and no attributes.

Istnieje niejawna konwersja z ciągu na XName.There is an implicit conversion from string to XName. Typowym zastosowaniem tego konstruktora jest określenie ciągu jako parametru zamiast tworzenia nowego XName.Typical use of this constructor is to specify a string as the parameter instead of creating a new XName. Podczas tworzenia elementu w przestrzeni nazw typowym zastosowaniem jest użycie przeciążenia operatora dodawania z XNamespace i ciągu w celu XNameutworzenia.When creating an element in a namespace, typical use is to use the addition operator overload with an XNamespace and a string to create an XName. Aby uzyskać więcej informacji, zobacz Praca z przestrzeniami nazw XML.For more information, see Working with XML Namespaces.

Zobacz też

XElement(XStreamingElement)

Inicjuje nowe wystąpienie XElement klasy XStreamingElement z obiektu.Initializes a new instance of the XElement class from an XStreamingElement object.

public:
 XElement(System::Xml::Linq::XStreamingElement ^ other);
public XElement (System.Xml.Linq.XStreamingElement other);
new System.Xml.Linq.XElement : System.Xml.Linq.XStreamingElement -> System.Xml.Linq.XElement
Public Sub New (other As XStreamingElement)

Parametry

other
XStreamingElement

Zawiera nieoceniane zapytania, które zostaną powtórzone dla zawartości tego XElementelementu. XStreamingElementAn XStreamingElement that contains unevaluated queries that will be iterated for the contents of this XElement.

Przykłady

Poniższy przykład tworzy źródłowe drzewo XML, a następnie tworzy XStreamingElement na podstawie zapytania w źródłowym drzewie XML.The following example creates a source XML tree, and then creates an XStreamingElement from a query on the source XML tree. Następnie Serializacja XStreamingElement do konsoli programu dodaje nowy element do źródłowego drzewa XML, a następnie XStreamingElement ponownie serializować.It then serializes the XStreamingElement to the console, adds a new element to the source XML tree, and then serializes the XStreamingElement again. Można zobaczyć, że element nowo dodany do źródłowego drzewa XML nie jest uwzględniony w pierwszej serializacji, ale jest zawarty w drugim.You can see that element newly added to the source XML tree is not included in the first serialization, but is included in the second.

XElement src = new XElement("Root",  
                   new XElement("Child1", 1),  
                   new XElement("Child2", 2),  
                   new XElement("Child3", 3)  
               );  
XStreamingElement xse = new XStreamingElement("NewRoot",  
                            from el in src.Elements()  
                            where (int)el >= 2  
                            select el  
                        );  
Console.WriteLine(xse);  
src.Add(new XElement("Child4", 4));  
Console.WriteLine("----");  
Console.WriteLine(xse);  
Dim src As XElement = _   
        <Root>  
            <Child1>1</Child1>  
            <Child2>2</Child2>  
            <Child3>3</Child3>  
        </Root>  
Dim xse As XStreamingElement = New XStreamingElement("NewRoot", _  
        From el In src.Elements() _  
        Where (CInt(el) >= 2) _  
        Select el _  
)  
Console.WriteLine(xse)  
src.Add(New XElement("Child4", 4))  
Console.WriteLine("----")  
Console.WriteLine(xse)  

Ten przykład generuje następujące wyniki:This example produces the following output:

<NewRoot>  
  <Child2>2</Child2>  
  <Child3>3</Child3>  
</NewRoot>  
----  
<NewRoot>  
  <Child2>2</Child2>  
  <Child3>3</Child3>  
  <Child4>4</Child4>  
</NewRoot>  

Uwagi

Ten konstruktor iteruje zawartość określonego XStreamingElementi tworzy element z jego zawartością.This constructor iterates through the contents of the specified XStreamingElement, and creates an element with its contents.

Zobacz też

XElement(XName, Object)

Inicjuje nowe wystąpienie XElement klasy o określonej nazwie i zawartości.Initializes a new instance of the XElement class with the specified name and content.

public:
 XElement(System::Xml::Linq::XName ^ name, System::Object ^ content);
public XElement (System.Xml.Linq.XName name, object content);
new System.Xml.Linq.XElement : System.Xml.Linq.XName * obj -> System.Xml.Linq.XElement
Public Sub New (name As XName, content As Object)

Parametry

name
XName

XName , Który zawiera nazwę elementu.An XName that contains the element name.

content
Object

Zawartość elementu.The contents of the element.

Przykłady

Poniższy przykład tworzy drzewo XML.The following example creates an XML tree. Zawartość nowego elementu pochodzi z zapytania LINQ.The content of the new element comes from a LINQ query.

XElement xmlTree1 = new XElement("Root",  
    new XElement("Child1", 1),  
    new XElement("Child2", 2),  
    new XElement("Child3", 3),  
    new XElement("Child4", 4),  
    new XElement("Child5", 5),  
    new XElement("Child6", 6)  
);  
  
XElement xmlTree2 = new XElement("Root",  
    from el in xmlTree1.Elements()  
    where((int)el >= 3 && (int)el <= 5)  
    select el  
);  
Console.WriteLine(xmlTree2);  
Dim xmlTree1 As XElement = _   
        <Root>  
            <Child1>1</Child1>  
            <Child2>2</Child2>  
            <Child3>3</Child3>  
            <Child4>4</Child4>  
            <Child5>5</Child5>  
            <Child6>6</Child6>  
        </Root>  
  
Dim xmlTree2 As XElement = _  
    <Root>  
        <%= From el In xmlTree1.Elements() _  
            Where el.Value >= 3 And el.Value <= 5 _  
            Select el %>  
    </Root>  
  
Console.WriteLine(xmlTree2)  

Ten przykład generuje następujące wyniki:This example produces the following output:

<Root>  
  <Child3>3</Child3>  
  <Child4>4</Child4>  
  <Child5>5</Child5>  
</Root>  

Poniższy przykład tworzy drzewo XML z wieloma typami zawartości.The following example creates an XML tree with a variety of types of content.

XElement root;  
  
// String content:  
root = new XElement("Root", "Some text");  
Console.WriteLine(root);  
  
// XElement object content:  
root = new XElement("Root",   
    new XElement("NewChild", "n")  
);  
Console.WriteLine(root);  
  
// XAttribute object content:  
root = new XElement("Root",   
    new XAttribute("NewAttribute", "n")  
);  
Console.WriteLine(root);  
  
// Double content:  
double dbl = 12.345;  
root = new XElement("Root", dbl);  
Console.WriteLine(root);  
  
// DateTime content:  
DateTime dt = new DateTime(2006, 10, 6, 12, 30, 00);  
root = new XElement("Root", dt);  
Console.WriteLine(root);  
  
// String array content:  
// Any collection other than a collection of XElement or XAttribute objects  
// are converted to strings. The strings are concatenated and added.  
string[] stringArray = {  
    "abc",  
    "def",  
    "ghi"  
};  
root = new XElement("Root", stringArray);  
Console.WriteLine(root);  
  
// XElement object array content:  
XElement[] ellArray = {  
    new XElement("NewChild1", 1),  
    new XElement("NewChild2", 2),  
    new XElement("NewChild3", 3)  
};  
root = new XElement("Root", ellArray);  
Console.WriteLine(root);  
  
// XAttribute object array content:  
XAttribute[] attArray = {  
    new XAttribute("NewAtt1", 1),  
    new XAttribute("NewAtt2", 2),  
    new XAttribute("NewAtt3", 3)  
};  
root = new XElement("Root", attArray);  
Console.WriteLine(root);  
Dim root As XElement  
  
' String content:  
root = <Root>Some text</Root>  
Console.WriteLine(root)  
  
' XElement object content:  
root = <Root>  
           <NewChild>n</NewChild>  
       </Root>  
Console.WriteLine(root)  
  
' XAttribute object content:  
root = <Root NewAttribute="n"/>  
Console.WriteLine(root)  
  
' Double content:  
Dim dbl As Double = 12.345  
root = <Root><%= dbl %></Root>  
Console.WriteLine(root)  
  
' DateTime content:  
Dim dt As DateTime = New DateTime(2006, 10, 6, 12, 30, 0)  
root = <Root><%= dt %></Root>  
Console.WriteLine(root)  
  
' String array content:  
' Any collection other than a collection of XElement or XAttribute objects  
' are converted to strings. The strings are concatenated and added.  
  
Dim stringArray As String() = { _  
    "abc", _  
    "def", _  
    "ghi" _  
}  
root = <Root><%= stringArray %></Root>  
Console.WriteLine(root)  
  
' XElement object array content:  
Dim ellArray As XElement() = { _  
    <NewChild1>1</NewChild1>, _  
    <NewChild2>2</NewChild2>, _  
    <NewChild3>3</NewChild3> _  
}  
  
root = <Root><%= ellArray %></Root>  
Console.WriteLine(root)  
  
' XAttribute object array content  
Dim attArray As XAttribute() = { _  
    New XAttribute("NewAtt1", 1), _  
    New XAttribute("NewAtt2", 2), _  
    New XAttribute("NewAtt3", 3) _  
}  
root = <Root><%= attArray %></Root>  
Console.WriteLine(root)  

Ten przykład generuje następujące wyniki:This example produces the following output:

<Root>Some text</Root>  
<Root>  
  <NewChild>n</NewChild>  
</Root>  
<Root NewAttribute="n" />  
<Root>12.345</Root>  
<Root>2006-10-06T12:30:00</Root>  
<Root>abcdefghi</Root>  
<Root>  
  <NewChild1>1</NewChild1>  
  <NewChild2>2</NewChild2>  
  <NewChild3>3</NewChild3>  
</Root>  
<Root NewAtt1="1" NewAtt2="2" NewAtt3="3" />  

Poniższy przykład tworzy drzewo XML w przestrzeni nazw.The following example creates an XML tree in a namespace.

// Create an XML tree in a namespace.  
XNamespace aw = "http://www.adventure-works.com";  
XElement root = new XElement(aw + "Root",  
    new XElement(aw + "Child", "child content")  
);  
Console.WriteLine(root);  
' Create an XML tree in a namespace.  
Dim root As XElement = _   
    <Root xmlns='http://www.adventure-works.com'>  
        <Child>child content</Child>  
    </Root>  
Console.WriteLine(root)  

Ten przykład generuje następujące wyniki:This example produces the following output:

<Root xmlns="http://www.adventure-works.com">  
  <Child>child content</Child>  
</Root>  

Poniższy przykład tworzy drzewo XML z zagnieżdżonymi przestrzeniami nazw.The following example creates an XML tree with nested namespaces.

// Create an XML tree with nested namespaces.  
XNamespace aw = "http://www.adventure-works.com";  
XNamespace fc = "www.fourthcoffee.com";  
XDocument root = new XDocument(  
    new XDeclaration("1.0", "utf-8", "yes"),  
    new XElement(aw + "Root",  
        new XElement(fc + "Child",  
            new XElement(aw + "DifferentChild", "other content")  
        )  
    )  
);  
Console.WriteLine(root);  
' Create an XML tree with nested namespaces.  
Dim root As XDocument = _   
    <?xml version='1.0'?>  
    <Root xmlns='http://www.adventure-works.com'>  
        <Child xmlns='www.fourthcoffee.com'>  
        <DifferentChild xmlns='http://www.adventure-works.com'>other content</DifferentChild>  
        </Child>  
    </Root>  
Console.WriteLine(root)  

Ten przykład generuje następujące wyniki:This example produces the following output:

<Root xmlns="http://www.adventure-works.com">  
  <Child xmlns="www.fourthcoffee.com">  
    <DifferentChild xmlns="http://www.adventure-works.com">other content</DifferentChild>  
  </Child>  
</Root>  

Uwagi

Ten konstruktor tworzy element z określoną zawartością i atrybutami.This constructor creates an element with the specified content and attributes.

Istnieje niejawna konwersja z ciągu na XName.There is an implicit conversion from string to XName. Typowym zastosowaniem tego konstruktora jest określenie ciągu jako parametru zamiast tworzenia nowego XName.Typical use of this constructor is to specify a string as the parameter instead of creating a new XName.

Podczas tworzenia elementu w przestrzeni nazw typowym zastosowaniem jest użycie przeciążenia operatora dodawania z XNamespace i ciągu w celu XNameutworzenia.When creating an element in a namespace, typical use is to use the addition operator overload with an XNamespace and a string to create an XName. Aby uzyskać więcej informacji, zobacz Praca z przestrzeniami nazw XML.For more information, see Working with XML Namespaces.

Aby uzyskać szczegółowe informacje o prawidłowej zawartości, którą można przesłać do tego konstruktora, zobacz poprawną zawartość obiektów XElement i XDocument.For details about the valid content that can be passed to this constructor, see Valid Content of XElement and XDocument Objects.

Zobacz też

XElement(XName, Object[])

Inicjuje nowe wystąpienie XElement klasy o określonej nazwie i zawartości.Initializes a new instance of the XElement class with the specified name and content.

public:
 XElement(System::Xml::Linq::XName ^ name, ... cli::array <System::Object ^> ^ content);
public XElement (System.Xml.Linq.XName name, params object[] content);
new System.Xml.Linq.XElement : System.Xml.Linq.XName * obj[] -> System.Xml.Linq.XElement
Public Sub New (name As XName, ParamArray content As Object())

Parametry

name
XName

XName , Który zawiera nazwę elementu.An XName that contains the element name.

content
Object[]

Początkowa zawartość elementu.The initial content of the element.

Przykłady

Poniższy przykład tworzy drzewo XML.The following example creates an XML tree. Zawartość nowego elementu pochodzi z zapytania LINQ.The content of the new element comes from a LINQ query.

XElement xmlTree1 = new XElement("Root",  
    new XElement("Child1", 1),  
    new XElement("Child2", 2),  
    new XElement("Child3", 3),  
    new XElement("Child4", 4),  
    new XElement("Child5", 5),  
    new XElement("Child6", 6)  
);  
  
XElement xmlTree2 = new XElement("Root",  
    from el in xmlTree1.Elements()  
    where((int)el >= 3 && (int)el <= 5)  
    select el  
);  
Console.WriteLine(xmlTree2);  
Dim xmlTree1 As XElement = _   
        <Root>  
            <Child1>1</Child1>  
            <Child2>2</Child2>  
            <Child3>3</Child3>  
            <Child4>4</Child4>  
            <Child5>5</Child5>  
            <Child6>6</Child6>  
        </Root>  
  
Dim xmlTree2 As XElement = _   
    <Root>  
        <%= From el In xmlTree1.Elements() _  
            Where el.Value >= 3 And el.Value <= 5 _  
            Select el %>  
    </Root>  
  
Console.WriteLine(xmlTree2)  

Ten przykład generuje następujące wyniki:This example produces the following output:

<Root>  
  <Child3>3</Child3>  
  <Child4>4</Child4>  
  <Child5>5</Child5>  
</Root>  

Poniższy przykład tworzy drzewo XML z wieloma typami zawartości.The following example creates an XML tree with a variety of types of content.

XElement root;  
  
// String content:  
root = new XElement("Root", "Some text");  
Console.WriteLine(root);  
  
// XElement object content:  
root = new XElement("Root",   
    new XElement("NewChild", "n")  
);  
Console.WriteLine(root);  
  
// XAttribute object content:  
root = new XElement("Root",   
    new XAttribute("NewAttribute", "n")  
);  
Console.WriteLine(root);  
  
// Double content:  
double dbl = 12.345;  
root = new XElement("Root", dbl);  
Console.WriteLine(root);  
  
// DateTime content:  
DateTime dt = new DateTime(2006, 10, 6, 12, 30, 00);  
root = new XElement("Root", dt);  
Console.WriteLine(root);  
  
// String array content:  
// Any collection other than a collection of XElement or XAttribute objects  
// are converted to strings. The strings are concatenated and added.  
string[] stringArray = {  
    "abc",  
    "def",  
    "ghi"  
};  
root = new XElement("Root", stringArray);  
Console.WriteLine(root);  
  
// XElement object array content:  
XElement[] ellArray = {  
    new XElement("NewChild1", 1),  
    new XElement("NewChild2", 2),  
    new XElement("NewChild3", 3)  
};  
root = new XElement("Root", ellArray);  
Console.WriteLine(root);  
  
// XAttribute object array content:  
XAttribute[] attArray = {  
    new XAttribute("NewAtt1", 1),  
    new XAttribute("NewAtt2", 2),  
    new XAttribute("NewAtt3", 3)  
};  
root = new XElement("Root", attArray);  
Console.WriteLine(root);  
Dim root As XElement  
  
' String content:  
root = <Root>Some text</Root>  
Console.WriteLine(root)  
  
' XElement object content:  
root = <Root>  
           <NewChild>n</NewChild>  
       </Root>  
Console.WriteLine(root)  
  
' XAttribute object content:  
root = <Root NewAttribute="n"/>  
Console.WriteLine(root)  
  
' Double content:  
Dim dbl As Double = 12.345  
root = <Root><%= dbl %></Root>  
Console.WriteLine(root)  
  
' DateTime content:  
Dim dt As DateTime = New DateTime(2006, 10, 6, 12, 30, 0)  
root = <Root><%= dt %></Root>  
Console.WriteLine(root)  
  
' String array content:  
' Any collection other than a collection of XElement or XAttribute objects  
' are converted to strings. The strings are concatenated and added.  
  
Dim stringArray As String() = { _  
    "abc", _  
    "def", _  
    "ghi" _  
}  
root = <Root><%= stringArray %></Root>  
Console.WriteLine(root)  
  
' XElement object array content:  
Dim ellArray As XElement() = { _  
    <NewChild1>1</NewChild1>, _  
    <NewChild2>2</NewChild2>, _  
    <NewChild3>3</NewChild3> _  
}  
  
root = <Root><%= ellArray %></Root>  
Console.WriteLine(root)  
  
' XAttribute object array content  
Dim attArray As XAttribute() = { _  
    New XAttribute("NewAtt1", 1), _  
    New XAttribute("NewAtt2", 2), _  
    New XAttribute("NewAtt3", 3) _  
}  
root = <Root><%= attArray %></Root>  
Console.WriteLine(root)  

Ten przykład generuje następujące wyniki:This example produces the following output:

<Root>Some text</Root>  
<Root>  
  <NewChild>n</NewChild>  
</Root>  
<Root NewAttribute="n" />  
<Root>12.345</Root>  
<Root>2006-10-06T12:30:00</Root>  
<Root>abcdefghi</Root>  
<Root>  
  <NewChild1>1</NewChild1>  
  <NewChild2>2</NewChild2>  
  <NewChild3>3</NewChild3>  
</Root>  
<Root NewAtt1="1" NewAtt2="2" NewAtt3="3" />  

Poniższy przykład tworzy drzewo XML w przestrzeni nazw.The following example creates an XML tree in a namespace.

// Create an XML tree in a namespace.  
XNamespace aw = "http://www.adventure-works.com";  
XElement root = new XElement(aw + "Root",  
    new XElement(aw + "Child", "child content")  
);  
Console.WriteLine(root);  
' Create an XML tree in a namespace.  
Dim root As XElement = _   
    <Root xmlns='http://www.adventure-works.com'>  
        <Child>child content</Child>  
    </Root>  
Console.WriteLine(root)  

Ten przykład generuje następujące wyniki:This example produces the following output:

<Root xmlns="http://www.adventure-works.com">  
  <Child>child content</Child>  
</Root>  

Poniższy przykład tworzy drzewo XML z zagnieżdżonymi przestrzeniami nazw.The following example creates an XML tree with nested namespaces.

// Create an XML tree with nested namespaces.  
XNamespace aw = "http://www.adventure-works.com";  
XNamespace fc = "www.fourthcoffee.com";  
XElement root = new XElement(aw + "Root",  
    new XElement(fc + "Child",  
        new XElement(aw + "DifferentChild", "other content")  
    )  
);  
Console.WriteLine(root);  
' Create an XML tree with nested namespaces.  
Dim root As XDocument = _   
    <?xml version='1.0'?>  
    <Root xmlns='http://www.adventure-works.com'>  
        <Child xmlns='www.fourthcoffee.com'>  
        <DifferentChild xmlns='http://www.adventure-works.com'>other content</DifferentChild>  
        </Child>  
    </Root>  
Console.WriteLine(root)  

Ten przykład generuje następujące wyniki:This example produces the following output:

<Root xmlns="http://www.adventure-works.com">  
  <Child xmlns="www.fourthcoffee.com">  
    <DifferentChild xmlns="http://www.adventure-works.com">other content</DifferentChild>  
  </Child>  
</Root>  

Uwagi

Ten konstruktor tworzy element z określoną zawartością i atrybutami.This constructor creates an element with the specified content and attributes.

Istnieje niejawna konwersja z ciągu na XName.There is an implicit conversion from string to XName. Typowym zastosowaniem tego konstruktora jest określenie ciągu jako parametru zamiast tworzenia nowego XName.Typical use of this constructor is to specify a string as the parameter instead of creating a new XName.

Podczas tworzenia elementu w przestrzeni nazw typowym zastosowaniem jest użycie przeciążenia operatora dodawania z XNamespace i ciągu w celu XNameutworzenia.When creating an element in a namespace, typical use is to use the addition operator overload with an XNamespace and a string to create an XName. Aby uzyskać więcej informacji, zobacz Praca z przestrzeniami nazw XML.For more information, see Working with XML Namespaces.

Aby uzyskać szczegółowe informacje o prawidłowej zawartości, którą można przesłać do tego konstruktora, zobacz poprawną zawartość obiektów XElement i XDocument.For details about the valid content that can be passed to this constructor, see Valid Content of XElement and XDocument Objects.

Zobacz też

Dotyczy