XElement Constructeurs
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Initialise une nouvelle instance de la classe XElement.
Surcharges
| Nom | Description |
|---|---|
| XElement(XElement) |
Initialise une nouvelle instance de la XElement classe à partir d’un autre XElement objet. |
| XElement(XName) |
Initialise une nouvelle instance de la XElement classe avec le nom spécifié. |
| XElement(XStreamingElement) |
Initialise une nouvelle instance de la XElement classe à partir d’un XStreamingElement objet. |
| XElement(XName, Object) |
Initialise une nouvelle instance de la XElement classe avec le nom et le contenu spécifiés. |
| XElement(XName, Object[]) |
Initialise une nouvelle instance de la XElement classe avec le nom et le contenu spécifiés. |
Exemples
L’exemple suivant crée une arborescence XML. Le contenu du nouvel élément provient d’une requête LINQ.
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)
Cet exemple produit la sortie suivante :
<Root>
<Child>3</Child>
<Child>4</Child>
<Child>5</Child>
</Root>
Remarques
Pour plus d’informations sur le contenu valide qui peut être transmis à ce constructeur, consultez Contenu valide des objets XElement et XDocument.
Il existe une conversion implicite de chaîne en XName. L’utilisation classique de ce constructeur consiste à spécifier une chaîne en tant que paramètre au lieu de créer un nouveau XName.
Lors de la création d’un élément dans un espace de noms, l’utilisation classique consiste à utiliser la surcharge d’opérateur d’ajout avec une XNamespace chaîne et une chaîne pour créer un XName. Pour plus d’informations, consultez Utiliser des espaces de noms XML.
XElement(XElement)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
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)
Paramètres
Exemples
L’exemple suivant crée une arborescence XML, crée un clone de l’arborescence, puis appelle DeepEquals, qui teste si les deux arborescences XML sont égales.
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))
Cet exemple produit la sortie suivante :
xmlTree = treeClone: True
xmlTree = treeClone: False
Remarques
Ce constructeur effectue une copie approfondie d’un élément.
Voir aussi
S’applique à
XElement(XName)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
Initialise une nouvelle instance de la XElement classe avec le nom spécifié.
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)
Paramètres
Exemples
L’exemple suivant crée un élément sans contenu.
XElement el = new XElement("Root");
Console.WriteLine(el);
Dim el As XElement = <Root/>
Console.WriteLine(el)
Cet exemple produit la sortie suivante :
<Root />
L’exemple suivant crée un élément dans un espace de noms sans contenu. Pour plus d’informations, consultez Utiliser des espaces de noms XML.
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
Cet exemple produit la sortie suivante :
<Root xmlns="http://www.adventure-works.com" />
Remarques
Ce constructeur crée un élément sans contenu et aucun attribut.
Il existe une conversion implicite de chaîne en XName. L’utilisation classique de ce constructeur consiste à spécifier une chaîne en tant que paramètre au lieu de créer un nouveau XName. Lors de la création d’un élément dans un espace de noms, l’utilisation classique consiste à utiliser la surcharge d’opérateur d’ajout avec une XNamespace chaîne et une chaîne pour créer un XName. Pour plus d’informations, consultez Utiliser des espaces de noms XML.
Voir aussi
S’applique à
XElement(XStreamingElement)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
Initialise une nouvelle instance de la XElement classe à partir d’un XStreamingElement objet.
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)
Paramètres
- other
- XStreamingElement
Qui XStreamingElement contient des requêtes non évaluées qui seront itérées pour le contenu de ce XElement.
Exemples
L’exemple suivant crée une arborescence XML source, puis crée une XStreamingElement requête dans l’arborescence XML source. Il sérialise ensuite la XStreamingElement console, ajoute un nouvel élément à l’arborescence XML source, puis sérialise à XStreamingElement nouveau. Vous pouvez voir que l’élément nouvellement ajouté à l’arborescence XML source n’est pas inclus dans la première sérialisation, mais qu’il est inclus dans la seconde.
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)
Cet exemple produit la sortie suivante :
<NewRoot>
<Child2>2</Child2>
<Child3>3</Child3>
</NewRoot>
----
<NewRoot>
<Child2>2</Child2>
<Child3>3</Child3>
<Child4>4</Child4>
</NewRoot>
Remarques
Ce constructeur itère dans le contenu du contenu spécifié XStreamingElementet crée un élément avec son contenu.
Voir aussi
S’applique à
XElement(XName, Object)
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
Initialise une nouvelle instance de la XElement classe avec le nom et le contenu spécifiés.
public:
XElement(System::Xml::Linq::XName ^ name, System::Object ^ content);
public XElement(System.Xml.Linq.XName name, 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)
Paramètres
- content
- Object
Contenu de l’élément.
Exemples
L’exemple suivant crée une arborescence XML. Le contenu du nouvel élément provient d’une requête LINQ.
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)
Cet exemple produit la sortie suivante :
<Root>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
</Root>
L’exemple suivant crée une arborescence XML avec divers types de contenu.
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)
Cet exemple produit la sortie suivante :
<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" />
L’exemple suivant crée une arborescence XML dans un espace de noms.
// 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)
Cet exemple produit la sortie suivante :
<Root xmlns="http://www.adventure-works.com">
<Child>child content</Child>
</Root>
L’exemple suivant crée une arborescence XML avec des espaces de noms imbriqués.
// 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)
Cet exemple produit la sortie suivante :
<Root xmlns="http://www.adventure-works.com">
<Child xmlns="www.fourthcoffee.com">
<DifferentChild xmlns="http://www.adventure-works.com">other content</DifferentChild>
</Child>
</Root>
Remarques
Ce constructeur crée un élément avec le contenu et les attributs spécifiés.
Il existe une conversion implicite de chaîne en XName. L’utilisation classique de ce constructeur consiste à spécifier une chaîne en tant que paramètre au lieu de créer un nouveau XName.
Lors de la création d’un élément dans un espace de noms, l’utilisation classique consiste à utiliser la surcharge d’opérateur d’ajout avec une XNamespace chaîne et une chaîne pour créer un XName. Pour plus d’informations, consultez Utiliser des espaces de noms XML.
Pour plus d’informations sur le contenu valide qui peut être transmis à ce constructeur, consultez Contenu valide des objets XElement et XDocument.
Voir aussi
S’applique à
XElement(XName, Object[])
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
- Source:
- XElement.cs
Initialise une nouvelle instance de la XElement classe avec le nom et le contenu spécifiés.
public:
XElement(System::Xml::Linq::XName ^ name, ... cli::array <System::Object ^> ^ content);
public XElement(System.Xml.Linq.XName name, params 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())
Paramètres
- content
- Object[]
Contenu initial de l’élément.
Exemples
L’exemple suivant crée une arborescence XML. Le contenu du nouvel élément provient d’une requête LINQ.
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)
Cet exemple produit la sortie suivante :
<Root>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
</Root>
L’exemple suivant crée une arborescence XML avec divers types de contenu.
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)
Cet exemple produit la sortie suivante :
<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" />
L’exemple suivant crée une arborescence XML dans un espace de noms.
// 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)
Cet exemple produit la sortie suivante :
<Root xmlns="http://www.adventure-works.com">
<Child>child content</Child>
</Root>
L’exemple suivant crée une arborescence XML avec des espaces de noms imbriqués.
// 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)
Cet exemple produit la sortie suivante :
<Root xmlns="http://www.adventure-works.com">
<Child xmlns="www.fourthcoffee.com">
<DifferentChild xmlns="http://www.adventure-works.com">other content</DifferentChild>
</Child>
</Root>
Remarques
Ce constructeur crée un élément avec le contenu et les attributs spécifiés.
Il existe une conversion implicite de chaîne en XName. L’utilisation classique de ce constructeur consiste à spécifier une chaîne en tant que paramètre au lieu de créer un nouveau XName.
Lors de la création d’un élément dans un espace de noms, l’utilisation classique consiste à utiliser la surcharge d’opérateur d’ajout avec une XNamespace chaîne et une chaîne pour créer un XName. Pour plus d’informations, consultez Utiliser des espaces de noms XML.
Pour plus d’informations sur le contenu valide qui peut être transmis à ce constructeur, consultez Contenu valide des objets XElement et XDocument.