XDocument Construtores

Definição

Inicializa uma nova instância da classe XDocument.Initializes a new instance of the XDocument class.

Sobrecargas

XDocument()

Inicializa uma nova instância da classe XDocument.Initializes a new instance of the XDocument class.

XDocument(Object[])

Inicializa uma nova instância da classe XDocument com o conteúdo especificado.Initializes a new instance of the XDocument class with the specified content.

XDocument(XDocument)

Inicializa uma nova instância da classe XDocument de um objeto XDocument existente.Initializes a new instance of the XDocument class from an existing XDocument object.

XDocument(XDeclaration, Object[])

Inicializa uma nova instância da classe XDocument com o XDeclaration e conteúdo especificados.Initializes a new instance of the XDocument class with the specified XDeclaration and content.

Exemplos

O exemplo a seguir cria um documento e, em seguida, adiciona um comentário e um elemento a ele.The following example creates a document, and then adds a comment and an element to it. Em seguida, ele compõe outro documento usando os resultados de uma 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)  

Esse exemplo gera a saída a seguir:This example produces the following output:

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

Comentários

Construtores sobrecarregados permitem que você crie um novo vazio XDocument ; para criar um XDocument com um conteúdo inicial especificado e criar um XDocument como uma cópia de outro XDocument objeto.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.

Não há muitos cenários que exijam a criação de um XDocument.There are not many scenarios that require you to create an XDocument. Em vez disso, você normalmente pode criar suas árvores XML com um nó raiz de XElement.Instead, you can usually create your XML trees with an XElement root node. A menos que você tenha um requisito específico para criar um documento (por exemplo, porque você precisa criar instruções de processamento e comentários no nível superior ou precisa dar suporte a tipos de documento), geralmente é mais conveniente usar XElement como o nó raiz.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 obter detalhes sobre o conteúdo válido de um XDocument , consulte conteúdo válido de objetos XElement e XDocument.For details about the valid content of an XDocument, see Valid Content of XElement and XDocument Objects.

XDocument()

Inicializa uma nova instância da classe XDocument.Initializes a new instance of the XDocument class.

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

Exemplos

O exemplo a seguir cria um novo documento e, em seguida, adiciona um comentário e um elemento a ele.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)  

Esse exemplo gera a saída a seguir:This example produces the following output:

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

Comentários

Não há muitos cenários que exijam a criação de um XDocument.There are not many scenarios that require you to create an XDocument. Em vez disso, você normalmente pode criar suas árvores XML com um nó raiz de XElement.Instead, you can usually create your XML trees with an XElement root node. A menos que você tenha um requisito específico para criar um documento (por exemplo, porque você precisa criar instruções de processamento e comentários no nível superior ou precisa dar suporte a tipos de documento), geralmente é mais conveniente usar XElement como o nó raiz.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 obter detalhes sobre o conteúdo válido de um XDocument , consulte conteúdo válido de objetos XElement e XDocument.For details about the valid content of an XDocument, see Valid Content of XElement and XDocument Objects.

Confira também

Aplica-se a

XDocument(Object[])

Inicializa uma nova instância da classe XDocument com o conteúdo 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[]

Uma lista de parâmetros de objetos de conteúdo para adicionar a este documento.A parameter list of content objects to add to this document.

Exemplos

O exemplo a seguir cria um documento e, em seguida, adiciona um comentário e um elemento a ele.The following example creates a document, and then adds a comment and an element to it. Em seguida, ele compõe outro documento usando os resultados de uma 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)  

Esse exemplo gera a saída a seguir:This example produces the following output:

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

Comentários

Não há muitos cenários que exijam a criação de um XDocument.There are not many scenarios that require you to create an XDocument. Em vez disso, você normalmente pode criar suas árvores XML com um nó raiz de XElement.Instead, you can usually create your XML trees with an XElement root node. A menos que você tenha um requisito específico para criar um documento (por exemplo, porque você precisa criar instruções de processamento e comentários no nível superior ou precisa dar suporte a tipos de documento), geralmente é mais conveniente usar XElement como o nó raiz.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 obter detalhes sobre o conteúdo válido de um XDocument , consulte conteúdo válido de objetos XElement e XDocument.For details about the valid content of an XDocument, see Valid Content of XElement and XDocument Objects.

Confira também

Aplica-se a

XDocument(XDocument)

Inicializa uma nova instância da classe XDocument de um objeto XDocument 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

O objeto XDocument que será copiado.The XDocument object that will be copied.

Comentários

Você usa esse construtor para fazer uma cópia profunda de um XDocument .You use this constructor to make a deep copy of an XDocument.

Esse construtor percorre todos os nós e atributos no documento especificado no other parâmetro e cria cópias de todos os nós à medida que ele monta o que foi inicializado recentemente XDocument .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.

Confira também

Aplica-se a

XDocument(XDeclaration, Object[])

Inicializa uma nova instância da classe XDocument com o XDeclaration e conteúdo 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);
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

O XDeclaration para o documento.An XDeclaration for the document.

content
Object[]

O conteúdo do documento.The content of the document.

Exemplos

O exemplo a seguir usa esse construtor para criar um 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"))  

Esse exemplo gera a saída a seguir: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>  

Comentários

Não há muitos cenários que exijam a criação de um XDocument.There are not many scenarios that require you to create an XDocument. Em vez disso, você normalmente pode criar suas árvores XML com um nó raiz de XElement.Instead, you can usually create your XML trees with an XElement root node. A menos que você tenha um requisito específico para criar um documento (por exemplo, porque você precisa criar instruções de processamento e comentários no nível superior ou precisa dar suporte a tipos de documento), geralmente é mais conveniente usar XElement como o nó raiz.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 obter detalhes sobre o conteúdo válido de um XDocument , consulte conteúdo válido de objetos XElement e XDocument.For details about the valid content of an XDocument, see Valid Content of XElement and XDocument Objects.

Confira também

Aplica-se a