XStreamingElement.Add Method (Object)

Adds the specified content as children to this XStreamingElement.

Namespace:  System.Xml.Linq
Assemblies:   System.Xml.XDocument (in System.Xml.XDocument.dll)
  System.Xml.Linq (in System.Xml.Linq.dll)

public void Add(
	Object content
)

Parameters

content
Type: System.Object

Content to be added to the streaming element.

This constructor adds the specified content and attributes to the XStreamingElement. While it is often possible to construct the XStreamingElement in a single statement, it is sometimes more convenient to add content to the streaming element incrementally.

Queries are not iterated until the XStreamingElement is serialized. This is in contrast to using queries for content for an XElement, where queries are iterated at the time of construction of the new XElement.

For details about the valid content that can be passed to this function, see Valid Content of XElement and XDocument Objects.

The following example creates a new XStreamingElement. It then adds two queries to the streaming element. The queries are not iterated until the streaming element is serialized.

XElement srcTree = new XElement("Root",
                       new XElement("Child", 1),
                       new XElement("Child", 2),
                       new XElement("Child", 3),
                       new XElement("Child", 4),
                       new XElement("Child", 5)
                   );

XStreamingElement dstTree = new XStreamingElement("NewRoot");

dstTree.Add(
    from el in srcTree.Elements()
    where (int)el <= 1
    select new XElement("Child", (int)el)
);

dstTree.Add(
    from el in srcTree.Elements()
    where (int)el >= 3
    select new XElement("DifferentChild", (int)el)
);

Console.WriteLine(dstTree);

This example produces the following output:

<NewRoot>
  <Child>1</Child>
  <DifferentChild>3</DifferentChild>
  <DifferentChild>4</DifferentChild>
  <DifferentChild>5</DifferentChild>
</NewRoot>

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0

.NET for Windows Phone apps

Supported in: Windows Phone 8.1, Windows Phone Silverlight 8.1, Windows Phone Silverlight 8

Portable Class Library

Supported in: Portable Class Library
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2015 Microsoft