Extensions.InDocumentOrder<T> Method
Silverlight
Returns a collection of nodes that contains all nodes in the source collection, sorted in document order.
Namespace: System.Xml.Linq
Assembly: System.Xml.Linq (in System.Xml.Linq.dll)
Type Parameters
- T
The type of the objects in source, constrained to XNode.
Parameters
- source
- Type: System.Collections.Generic.IEnumerable<T>
An IEnumerable<T> of XNode that contains the source collection.
Return Value
Type: System.Collections.Generic.IEnumerable<T>An IEnumerable<T> of XNode that contains all nodes in the source collection, sorted in document order.
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type IEnumerable<T>. When you use instance method syntax to call this method, omit the first parameter.The following example creates a collection of nodes that are not in document order, and then uses this axis to create a new collection where the nodes are in document order.
StringBuilder output = new StringBuilder();
XElement xmlTree = new XElement("Root",
new XElement("Item",
new XElement("aaa", 1),
new XElement("bbb", 2)
),
new XElement("Item",
new XElement("ccc", 3),
new XElement("aaa", 4)
),
new XElement("Item",
new XElement("ddd", 5),
new XElement("eee", 6)
)
);
XElement[] elementList = {
xmlTree.Descendants("ddd").First(),
xmlTree.Descendants("ccc").First(),
xmlTree.Descendants("aaa").First()
};
IEnumerable<XElement> inDocOrder = elementList.InDocumentOrder();
foreach (XElement el in inDocOrder)
output.Append(el + Environment.NewLine);
OutputTextBlock.Text = output.ToString();
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.
Community Additions
ADD
Show: