XNode.NodesBeforeSelf Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает перед данным узлом коллекцию узлов того же уровня в порядке их следования в документе.
public:
System::Collections::Generic::IEnumerable<System::Xml::Linq::XNode ^> ^ NodesBeforeSelf();
public System.Collections.Generic.IEnumerable<System.Xml.Linq.XNode> NodesBeforeSelf ();
member this.NodesBeforeSelf : unit -> seq<System.Xml.Linq.XNode>
Public Function NodesBeforeSelf () As IEnumerable(Of XNode)
Public Iterator Function NodesBeforeSelf () As IEnumerable(Of XNode)
Возвращаемое значение
IEnumerable<T>, принадлежащий XNode узлов того же уровня перед данным узлом в документном порядке.
Примеры
В следующем примере создается XML-дерево, а затем выполняется запрос к дереву с помощью этого метода оси.
XElement xmlTree = new XElement("Root",
new XText("Text content."),
new XElement("Child1", "child1 content"),
new XElement("Child2", "child2 content"),
new XText("More text content."),
new XElement("child3", "child3 content")
);
XElement child = xmlTree.Element("Child2");
IEnumerable<XNode> nodes =
from node in child.NodesBeforeSelf()
select node;
foreach (XNode node in nodes)
Console.WriteLine("Node type: {0} {1}",
node.NodeType,
node.NodeType == XmlNodeType.Text ? (node as XText).Value : "");
Dim xmlTree As XElement = New XElement("Root", _
New XText("Text content."), _
New XElement("Child1", "child1 content"), _
New XElement("Child2", "child2 content"), _
New XText("More text content."), _
New XElement("child3", "child3 content") _
)
Dim child As XElement = xmlTree.Element("Child2")
Dim nodes As IEnumerable(Of XNode) = _
From node In child.NodesBeforeSelf() _
Select node
For Each node As XNode In nodes
Dim s As String = ""
If node.NodeType = XmlNodeType.Text Then
s = DirectCast(node, XText).Value
End If
Console.WriteLine("Node type: {0} {1}", node.NodeType, s)
Next
В этом примере выводятся следующие данные:
Node type: Text Text content.
Node type: Element
Комментарии
Этот метод включает только одноуровневые элементы в возвращаемой коллекции. Он не включает потомков.
Этот метод использует отложенное выполнение.