XNode.AddBeforeSelf 方法

定义

紧邻此节点之前添加指定的内容。

重载

AddBeforeSelf(Object)

紧邻此节点之前添加指定的内容。

AddBeforeSelf(Object[])

紧邻此节点之前添加指定的内容。

示例

以下示例使用 LINQ 查询创建 的 XElementIEnumerable<T>然后将其传递给此方法。 这会将查询的结果添加到所需位置的树中。

XElement srcTree = new XElement("Root",  
    new XElement("Element1", 1),  
    new XElement("Element2", 2),  
    new XElement("Element3", 3),  
    new XElement("Element4", 4),  
    new XElement("Element5", 5)  
);  
XElement xmlTree = new XElement("Root",  
    new XElement("Child1", 1),  
    new XElement("Child2", 2),  
    new XElement("Child3", 3),  
    new XElement("Child4", 4),  
    new XElement("Child5", 5)  
);  
XElement child1 = xmlTree.Element("Child1");  
child1.AddBeforeSelf(  
    from el in srcTree.Elements()  
    where (int)el > 3  
    select el  
);  
Console.WriteLine(xmlTree);  
Dim srcTree As XElement = _   
        <Root>  
            <Element1>1</Element1>  
            <Element2>2</Element2>  
            <Element3>3</Element3>  
            <Element4>4</Element4>  
            <Element5>5</Element5>  
        </Root>  

Dim xmlTree As XElement = _   
        <Root>  
            <Child1>1</Child1>  
            <Child2>2</Child2>  
            <Child3>3</Child3>  
            <Child4>4</Child4>  
            <Child5>5</Child5>  
        </Root>  

Dim child1 As XElement = xmlTree.<Child1>(0)  
child1.AddBeforeSelf( _  
From el In srcTree.Elements() _  
Where CInt(el) > 3 _  
Select el)  

Console.WriteLine(xmlTree)  

该示例产生下面的输出:

<Root>  
  <Element4>4</Element4>  
  <Element5>5</Element5>  
  <Child1>1</Child1>  
  <Child2>2</Child2>  
  <Child3>3</Child3>  
  <Child4>4</Child4>  
  <Child5>5</Child5>  
</Root>  

注解

有关可传递给此方法的有效内容的详细信息,请参阅 XElement 和 XDocument 对象的有效内容

此方法将引发 ChangedChanging 事件。

将其 XContainer 子笔记存储为单独链接的对象 XNode 列表。 这意味着 方法 AddBeforeSelf 必须遍历父容器下的直接子节点列表。 因此,使用此方法可能会影响性能。

AddBeforeSelf(Object)

紧邻此节点之前添加指定的内容。

public:
 void AddBeforeSelf(System::Object ^ content);
public void AddBeforeSelf (object content);
public void AddBeforeSelf (object? content);
member this.AddBeforeSelf : obj -> unit
Public Sub AddBeforeSelf (content As Object)

参数

content
Object

要添加到此节点之前的包含简单内容的内容对象或内容对象集合。

例外

父级为 null

示例

以下示例使用此方法将元素添加到树中。

XElement xmlTree = new XElement("Root",  
    new XElement("Child1", 1),  
    new XElement("Child2", 2),  
    new XElement("Child3", 3),  
    new XElement("Child4", 4),  
    new XElement("Child5", 5)  
);  
XElement child1 = xmlTree.Element("Child1");  
child1.AddBeforeSelf(  
    new XElement("NewChild", 10)  
);  
Console.WriteLine(xmlTree);  
Dim xmlTree As XElement = _   
        <Root>  
            <Child1>1</Child1>  
            <Child2>2</Child2>  
            <Child3>3</Child3>  
            <Child4>4</Child4>  
            <Child5>5</Child5>  
        </Root>  

Dim child1 As XElement = xmlTree.<Child1>(0)  
child1.AddBeforeSelf(New XElement("NewChild", 10))  
Console.WriteLine(xmlTree)  

该示例产生下面的输出:

<Root>  
  <NewChild>10</NewChild>  
  <Child1>1</Child1>  
  <Child2>2</Child2>  
  <Child3>3</Child3>  
  <Child4>4</Child4>  
  <Child5>5</Child5>  
</Root>  

注解

有关可传递给此方法的有效内容的详细信息,请参阅 XElement 和 XDocument 对象的有效内容

此方法将引发 ChangedChanging 事件。

将其 XContainer 子节点存储为对象的单独链接列表 XNode 。 这意味着 方法 AddBeforeSelf 必须遍历父容器下的直接子节点列表。 因此,使用此方法可能会影响性能。

另请参阅

适用于

AddBeforeSelf(Object[])

紧邻此节点之前添加指定的内容。

public:
 void AddBeforeSelf(... cli::array <System::Object ^> ^ content);
public void AddBeforeSelf (params object[] content);
public void AddBeforeSelf (params object?[] content);
member this.AddBeforeSelf : obj[] -> unit
Public Sub AddBeforeSelf (ParamArray content As Object())

参数

content
Object[]

内容对象的参数列表。

例外

父级为 null

示例

以下示例使用 LINQ 查询创建 的 XElementIEnumerable<T>然后将其传递给此方法。 这会将查询的结果添加到所需位置的树中。

XElement srcTree = new XElement("Root",  
    new XElement("Element1", 1),  
    new XElement("Element2", 2),  
    new XElement("Element3", 3),  
    new XElement("Element4", 4),  
    new XElement("Element5", 5)  
);  
XElement xmlTree = new XElement("Root",  
    new XElement("Child1", 1),  
    new XElement("Child2", 2),  
    new XElement("Child3", 3),  
    new XElement("Child4", 4),  
    new XElement("Child5", 5)  
);  
XElement child1 = xmlTree.Element("Child1");  
child1.AddBeforeSelf(  
    from el in srcTree.Elements()  
    where (int)el > 3  
    select el  
);  
Console.WriteLine(xmlTree);  
Dim srcTree As XElement = _   
        <Root>  
            <Element1>1</Element1>  
            <Element2>2</Element2>  
            <Element3>3</Element3>  
            <Element4>4</Element4>  
            <Element5>5</Element5>  
        </Root>  

Dim xmlTree As XElement = _   
        <Root>  
            <Child1>1</Child1>  
            <Child2>2</Child2>  
            <Child3>3</Child3>  
            <Child4>4</Child4>  
            <Child5>5</Child5>  
        </Root>  

Dim child1 As XElement = xmlTree.<Child1>(0)  
child1.AddBeforeSelf( _  
    From el In srcTree.Elements() _  
    Where CInt(el) > 3 _  
    Select el)  

Console.WriteLine(xmlTree)  

该示例产生下面的输出:

<Root>  
  <Element4>4</Element4>  
  <Element5>5</Element5>  
  <Child1>1</Child1>  
  <Child2>2</Child2>  
  <Child3>3</Child3>  
  <Child4>4</Child4>  
  <Child5>5</Child5>  
</Root>  

注解

有关可传递给此方法的有效内容的详细信息,请参阅 XElement 和 XDocument 对象的有效内容

此方法将引发 ChangedChanging 事件。

将其 XContainer 子节点存储为对象的单独链接列表 XNode 。 这意味着 方法 AddBeforeSelf 必须遍历父容器下的直接子节点列表。 因此,使用此函数可能会影响性能。

另请参阅

适用于