XNode.AddBeforeSelf Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Adds the specified content immediately before this node.
Overloads
AddBeforeSelf(Object) |
Adds the specified content immediately before this node. |
AddBeforeSelf(Object[]) |
Adds the specified content immediately before this node. |
Examples
The following example uses a LINQ query to create an IEnumerable<T> of XElement, which it then passes to this method. This adds the results of a query to the tree in the desired location.
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)
This example produces the following output:
<Root>
<Element4>4</Element4>
<Element5>5</Element5>
<Child1>1</Child1>
<Child2>2</Child2>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
</Root>
Remarks
For details about the valid content that can be passed to this method, see Valid Content of XElement and XDocument Objects.
This method will raise the Changed and Changing events.
The XContainer stores its child notes as a singly-linked list of XNode objects. This means that the AddBeforeSelf method must traverse the list of direct child nodes under the parent container. Therefore, using this method might affect your performance.
AddBeforeSelf(Object)
- Source:
- XNode.cs
- Source:
- XNode.cs
- Source:
- XNode.cs
Adds the specified content immediately before this node.
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)
Parameters
- content
- Object
A content object that contains simple content or a collection of content objects to be added before this node.
Exceptions
The parent is null
.
Examples
The following example uses this method to add an element into the tree.
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)
This example produces the following output:
<Root>
<NewChild>10</NewChild>
<Child1>1</Child1>
<Child2>2</Child2>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
</Root>
Remarks
For details about the valid content that can be passed to this method, see Valid Content of XElement and XDocument Objects.
This method will raise the Changed and the Changing events.
The XContainer stores its child nodes as a singly-linked list of XNode objects. This means that the AddBeforeSelf method must traverse the list of direct child nodes under the parent container. Therefore, using this method might affect your performance.
See also
Applies to
AddBeforeSelf(Object[])
- Source:
- XNode.cs
- Source:
- XNode.cs
- Source:
- XNode.cs
Adds the specified content immediately before this node.
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())
Parameters
- content
- Object[]
A parameter list of content objects.
Exceptions
The parent is null
.
Examples
The following example uses a LINQ query to create an IEnumerable<T> of XElement, which it then passes to this method. This adds the results of a query to the tree in the desired location.
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)
This example produces the following output:
<Root>
<Element4>4</Element4>
<Element5>5</Element5>
<Child1>1</Child1>
<Child2>2</Child2>
<Child3>3</Child3>
<Child4>4</Child4>
<Child5>5</Child5>
</Root>
Remarks
For details about the valid content that can be passed to this method, see Valid Content of XElement and XDocument Objects.
This method will raise the Changed and the Changing events.
The XContainer stores its child nodes as a singly-linked list of XNode objects. This means that the AddBeforeSelf method must traverse the list of direct child nodes under the parent container. Therefore, using this function might affect your performance.