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

備註

此方法僅包含回傳集合中的兄弟姊妹。 不包括後代。

此方法使用延遲執行。

適用於

另請參閱