XNode.AddBeforeSelf 方法

定義

將指定的內容加入緊接在此節點前面的位置。

多載

AddBeforeSelf(Object)

將指定的內容加入緊接在此節點前面的位置。

AddBeforeSelf(Object[])

將指定的內容加入緊接在此節點前面的位置。

範例

下列範例會使用 LINQ 查詢來建立 IEnumerable<T>XElement ,然後傳遞至這個方法。 這會將查詢的結果新增至所需位置的樹狀結構。

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);  

這個範例會產生下列輸出:

<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)

來源:
XNode.cs
來源:
XNode.cs
來源:
XNode.cs

將指定的內容加入緊接在此節點前面的位置。

public void AddBeforeSelf(object content);
public void AddBeforeSelf(object? content);

參數

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);  

這個範例會產生下列輸出:

<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 方法必須周遊父容器下直接子節點的清單。 因此,使用此方法可能會影響您的效能。

另請參閱

適用於

.NET 10 及其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

AddBeforeSelf(Object[])

來源:
XNode.cs
來源:
XNode.cs
來源:
XNode.cs

將指定的內容加入緊接在此節點前面的位置。

public void AddBeforeSelf(params object[] content);
public void AddBeforeSelf(params object?[] content);

參數

content
Object[]

內容物件的參數清單。

例外狀況

該父代為 null

範例

下列範例會使用 LINQ 查詢來建立 IEnumerable<T>XElement ,然後傳遞至這個方法。 這會將查詢的結果新增至所需位置的樹狀結構。

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);  

這個範例會產生下列輸出:

<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 方法必須周遊父容器下直接子節點的清單。 因此,使用此函式可能會影響您的效能。

另請參閱

適用於

.NET 10 及其他版本
產品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0