XDocument Constructores

Definición

Inicializa una nueva instancia de la clase XDocument.Initializes a new instance of the XDocument class.

Sobrecargas

XDocument()

Inicializa una nueva instancia de la clase XDocument.Initializes a new instance of the XDocument class.

XDocument(Object[])

Inicializa una nueva instancia de la clase XDocument con el contenido especificado.Initializes a new instance of the XDocument class with the specified content.

XDocument(XDocument)

Inicializa una nueva instancia de la clase XDocument a partir de un objeto XDocument ya existente.Initializes a new instance of the XDocument class from an existing XDocument object.

XDocument(XDeclaration, Object[])

Inicializa una nueva instancia de la clase XDocument con la clase XDeclaration y el contenido especificados.Initializes a new instance of the XDocument class with the specified XDeclaration and content.

Ejemplos

En el ejemplo siguiente se crea un documento y, a continuación, se agrega un comentario y un elemento.The following example creates a document, and then adds a comment and an element to it. A continuación, se compone otro documento con los resultados de una consulta.It then composes another document using the results of a query.

XDocument srcTree = new XDocument(  
    new XComment("This is a comment"),  
    new XElement("Root",  
        new XElement("Child1", "data1"),  
        new XElement("Child2", "data2"),  
        new XElement("Child3", "data3"),  
        new XElement("Child2", "data4"),  
        new XElement("Info5", "info5"),  
        new XElement("Info6", "info6"),  
        new XElement("Info7", "info7"),  
        new XElement("Info8", "info8")  
    )  
);  
  
XDocument doc = new XDocument(  
    new XComment("This is a comment"),  
    new XElement("Root",  
        from el in srcTree.Element("Root").Elements()  
        where ((string)el).StartsWith("data")  
        select el  
    )  
);  
Console.WriteLine(doc);  
Dim srcTree As XDocument = _   
    <?xml version="1.0" encoding="utf-8" standalone="yes"?>  
        <!--This is a comment-->  
        <Root>  
            <Child1>data1</Child1>  
            <Child2>data2</Child2>  
            <Child3>data3</Child3>  
            <Child2>data4</Child2>  
            <Info5>info5</Info5>  
            <Info6>info6</Info6>  
            <Info7>info7</Info7>  
            <Info8>info8</Info8>  
        </Root>  
Dim doc As XDocument = _   
    <?xml version="1.0" encoding="utf-8" standalone="yes"?>  
        <!--This is a comment-->  
        <Root>  
            <%= From el In srcTree.<Root>.Elements _  
                Where CStr(el).StartsWith("data") _  
                Select el %>  
        </Root>  
Console.WriteLine(doc)  

En este ejemplo se produce la siguiente salida:This example produces the following output:

<!--This is a comment-->  
<Root>  
  <Child1>data1</Child1>  
  <Child2>data2</Child2>  
  <Child3>data3</Child3>  
  <Child2>data4</Child2>  
</Root>  

Comentarios

Los constructores sobrecargados le permiten crear un nuevo XDocumentvacío; para crear un XDocument con algún contenido inicial especificado; y para crear un XDocument como una copia de otro objeto XDocument.Overloaded constructors enable you to create a new empty XDocument; to create an XDocument with some specified initial content; and to create an XDocument as a copy of another XDocument object.

No existen muchos escenarios que requieran la creación de un objeto XDocument.There are not many scenarios that require you to create an XDocument. En su lugar, normalmente puede crear los árboles XML con un nodo raíz XElement.Instead, you can usually create your XML trees with an XElement root node. A menos que exista un requisito específico de crear un documento (por ejemplo, porque deba crear instrucciones y comentarios de procesamiento en el nivel superior, o bien deba admitir tipos de documento), a menudo resulta más conveniente usar XElement como nodo raíz.Unless you have a specific requirement to create a document (for example, because you have to create processing instructions and comments at the top level, or you have to support document types), it is often more convenient to use XElement as your root node.

Para obtener más información sobre el contenido válido de un XDocument, vea contenido válido de objetos XElement y XDocument.For details about the valid content of an XDocument, see Valid Content of XElement and XDocument Objects.

XDocument()

Inicializa una nueva instancia de la clase XDocument.Initializes a new instance of the XDocument class.

public:
 XDocument();
public XDocument ();
Public Sub New ()

Ejemplos

En el ejemplo siguiente se crea un nuevo documento y, a continuación, se agrega un comentario y un elemento.The following example creates a new document, and then adds a comment and an element to it.

XDocument doc = new XDocument();  
doc.Add(new XComment("This is a comment"));  
doc.Add(new XElement("Root", "content"));  
Console.WriteLine(doc);  
Dim doc As XDocument = New XDocument()  
doc.Add(<!--This is a comment-->)  
doc.Add(<Root>content</Root>)  
Console.WriteLine(doc)  

En este ejemplo se produce la siguiente salida:This example produces the following output:

<!--This is a comment-->  
<Root>content</Root>  

Comentarios

No existen muchos escenarios que requieran la creación de un objeto XDocument.There are not many scenarios that require you to create an XDocument. En su lugar, normalmente puede crear los árboles XML con un nodo raíz XElement.Instead, you can usually create your XML trees with an XElement root node. A menos que exista un requisito específico de crear un documento (por ejemplo, porque deba crear instrucciones y comentarios de procesamiento en el nivel superior, o bien deba admitir tipos de documento), a menudo resulta más conveniente usar XElement como nodo raíz.Unless you have a specific requirement to create a document (for example, because you have to create processing instructions and comments at the top level, or you have to support document types), it is often more convenient to use XElement as your root node.

Para obtener más información sobre el contenido válido de un XDocument, vea contenido válido de objetos XElement y XDocument.For details about the valid content of an XDocument, see Valid Content of XElement and XDocument Objects.

Consulte también:

XDocument(Object[])

Inicializa una nueva instancia de la clase XDocument con el contenido especificado.Initializes a new instance of the XDocument class with the specified content.

public:
 XDocument(... cli::array <System::Object ^> ^ content);
public XDocument (params object[] content);
new System.Xml.Linq.XDocument : obj[] -> System.Xml.Linq.XDocument
Public Sub New (ParamArray content As Object())

Parámetros

content
Object[]

Lista de parámetros de objetos de contenido que se van a agregar a este documento.A parameter list of content objects to add to this document.

Ejemplos

En el ejemplo siguiente se crea un documento y, a continuación, se agrega un comentario y un elemento.The following example creates a document, and then adds a comment and an element to it. A continuación, se compone otro documento con los resultados de una consulta.It then composes another document using the results of a query.

XDocument srcTree = new XDocument(  
    new XComment("This is a comment"),  
    new XElement("Root",  
        new XElement("Child1", "data1"),  
        new XElement("Child2", "data2"),  
        new XElement("Child3", "data3"),  
        new XElement("Child2", "data4"),  
        new XElement("Info5", "info5"),  
        new XElement("Info6", "info6"),  
        new XElement("Info7", "info7"),  
        new XElement("Info8", "info8")  
    )  
);  
  
XDocument doc = new XDocument(  
    new XComment("This is a comment"),  
    new XElement("Root",  
        from el in srcTree.Element("Root").Elements()  
        where ((string)el).StartsWith("data")  
        select el  
    )  
);  
Console.WriteLine(doc);  
Dim srcTree As XDocument = _  
    <?xml version="1.0" encoding="utf-8" standalone="yes"?>  
        <!--This is a comment-->  
        <Root>  
            <Child1>data1</Child1>  
            <Child2>data2</Child2>  
            <Child3>data3</Child3>  
            <Child2>data4</Child2>  
            <Info5>info5</Info5>  
            <Info6>info6</Info6>  
            <Info7>info7</Info7>  
            <Info8>info8</Info8>  
        </Root>  
Dim doc As XDocument = _   
    <?xml version="1.0" encoding="utf-8" standalone="yes"?>  
        <!--This is a comment-->  
        <Root>  
            <%= From el In srcTree.<Root>.Elements _  
                Where CStr(el).StartsWith("data") _  
                Select el %>  
        </Root>  
Console.WriteLine(doc)  

En este ejemplo se produce la siguiente salida:This example produces the following output:

<!--This is a comment-->  
<Root>  
  <Child1>data1</Child1>  
  <Child2>data2</Child2>  
  <Child3>data3</Child3>  
  <Child2>data4</Child2>  
</Root>  

Comentarios

No existen muchos escenarios que requieran la creación de un objeto XDocument.There are not many scenarios that require you to create an XDocument. En su lugar, normalmente puede crear los árboles XML con un nodo raíz XElement.Instead, you can usually create your XML trees with an XElement root node. A menos que exista un requisito específico de crear un documento (por ejemplo, porque deba crear instrucciones y comentarios de procesamiento en el nivel superior, o bien deba admitir tipos de documento), a menudo resulta más conveniente usar XElement como nodo raíz.Unless you have a specific requirement to create a document (for example, because you have to create processing instructions and comments at the top level, or you have to support document types), it is often more convenient to use XElement as your root node.

Para obtener más información sobre el contenido válido de un XDocument, vea contenido válido de objetos XElement y XDocument.For details about the valid content of an XDocument, see Valid Content of XElement and XDocument Objects.

Consulte también:

XDocument(XDocument)

Inicializa una nueva instancia de la clase XDocument a partir de un objeto XDocument ya existente.Initializes a new instance of the XDocument class from an existing XDocument object.

public:
 XDocument(System::Xml::Linq::XDocument ^ other);
public XDocument (System.Xml.Linq.XDocument other);
new System.Xml.Linq.XDocument : System.Xml.Linq.XDocument -> System.Xml.Linq.XDocument
Public Sub New (other As XDocument)

Parámetros

other
XDocument

El objeto XDocument que se copiará.The XDocument object that will be copied.

Comentarios

Este constructor se usa para hacer una copia en profundidad de un XDocument.You use this constructor to make a deep copy of an XDocument.

Este constructor recorre todos los nodos y atributos del documento especificado en el parámetro other y crea copias de todos los nodos cuando ensambla el XDocumentrecién inicializado.This constructor traverses all nodes and attributes in the document specified in the other parameter, and creates copies of all nodes as it assembles the newly initialized XDocument.

Consulte también:

XDocument(XDeclaration, Object[])

Inicializa una nueva instancia de la clase XDocument con la clase XDeclaration y el contenido especificados.Initializes a new instance of the XDocument class with the specified XDeclaration and content.

public:
 XDocument(System::Xml::Linq::XDeclaration ^ declaration, ... cli::array <System::Object ^> ^ content);
public XDocument (System.Xml.Linq.XDeclaration declaration, params object[] content);
new System.Xml.Linq.XDocument : System.Xml.Linq.XDeclaration * obj[] -> System.Xml.Linq.XDocument
Public Sub New (declaration As XDeclaration, ParamArray content As Object())

Parámetros

declaration
XDeclaration

XDeclaration del documento.An XDeclaration for the document.

content
Object[]

El contenido del documento.The content of the document.

Ejemplos

En el ejemplo siguiente se usa este constructor para crear un documento.The following example uses this constructor to create a document.

XDocument srcTree = new XDocument(  
    new XComment("This is a comment"),  
    new XElement("Root",  
        new XElement("Child1", "data1"),  
        new XElement("Child2", "data2"),  
        new XElement("Child3", "data3"),  
        new XElement("Child2", "data4"),  
        new XElement("Info5", "info5"),  
        new XElement("Info6", "info6"),  
        new XElement("Info7", "info7"),  
        new XElement("Info8", "info8")  
    )  
);  
  
XDocument doc = new XDocument(  
    new XDeclaration("1.0", "utf-8", "yes"),  
    new XComment("This is a new comment"),  
    new XElement("Root",  
        from el in srcTree.Element("Root").Elements()  
        where ((string)el).StartsWith("data")  
        select el  
    )  
);  
doc.Save("Test.xml");  
Console.WriteLine(File.ReadAllText("Test.xml"));  
Dim srcTree As XDocument = _   
    <?xml version="1.0" encoding="utf-8" standalone="yes"?>  
        <!--This is a comment-->  
        <Root>  
            <Child1>data1</Child1>  
            <Child2>data2</Child2>  
            <Child3>data3</Child3>  
            <Child2>data4</Child2>  
            <Info5>info5</Info5>  
            <Info6>info6</Info6>  
            <Info7>info7</Info7>  
            <Info8>info8</Info8>  
        </Root>  
Dim doc As XDocument = _   
    <?xml version="1.0" encoding="utf-8" standalone="yes"?>  
        <!--This is a new comment-->  
        <Root>  
            <%= From el In srcTree.<Root>.Elements _  
                Where CStr(el).StartsWith("data") _  
                Select el %>  
        </Root>  
doc.Save("Test.xml")  
Console.WriteLine(File.ReadAllText("Test.xml"))  

En este ejemplo se produce la siguiente salida:This example produces the following output:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>  
<!--This is a new comment-->  
<Root>  
  <Child1>data1</Child1>  
  <Child2>data2</Child2>  
  <Child3>data3</Child3>  
  <Child2>data4</Child2>  
</Root>  

Comentarios

No existen muchos escenarios que requieran la creación de un objeto XDocument.There are not many scenarios that require you to create an XDocument. En su lugar, normalmente puede crear los árboles XML con un nodo raíz XElement.Instead, you can usually create your XML trees with an XElement root node. A menos que exista un requisito específico de crear un documento (por ejemplo, porque deba crear instrucciones y comentarios de procesamiento en el nivel superior, o bien deba admitir tipos de documento), a menudo resulta más conveniente usar XElement como nodo raíz.Unless you have a specific requirement to create a document (for example, because you have to create processing instructions and comments at the top level, or you have to support document types), it is often more convenient to use XElement as your root node.

Para obtener más información sobre el contenido válido de un XDocument, vea contenido válido de objetos XElement y XDocument.For details about the valid content of an XDocument, see Valid Content of XElement and XDocument Objects.

Consulte también:

Se aplica a