Compartilhar via


XDocument Construtores

Definição

Inicializa uma nova instância da classe XDocument.

Sobrecargas

XDocument()

Inicializa uma nova instância da classe XDocument.

XDocument(Object[])

Inicializa uma nova instância da classe XDocument com o conteúdo especificado.

XDocument(XDocument)

Inicializa uma nova instância da classe XDocument de um objeto XDocument existente.

XDocument(XDeclaration, Object[])

Inicializa uma nova instância da classe XDocument com o XDeclaration e conteúdo especificados.

Exemplos

O exemplo a seguir cria um documento e adiciona um comentário e um elemento a ele. Em seguida, ele compõe outro documento usando os resultados de uma consulta.

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 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 algum conteúdo inicial especificado; e para criar uma XDocument cópia de outro XDocument objeto.

Não há muitos cenários que exijam a criação de um XDocument. Em vez disso, você normalmente pode criar suas árvores XML com um nó raiz de XElement. 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.

Para obter detalhes sobre o conteúdo válido de um XDocument, consulte Conteúdo Válido de Objetos XElement e XDocument.

XDocument()

Inicializa uma nova instância da classe XDocument.

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

Exemplos

O exemplo a seguir cria um novo documento e adiciona um comentário e um elemento a ele.

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 is a comment-->  
<Root>content</Root>  

Comentários

Não há muitos cenários que exijam a criação de um XDocument. Em vez disso, você normalmente pode criar suas árvores XML com um nó raiz de XElement. 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.

Para obter detalhes sobre o conteúdo válido de um XDocument, consulte Conteúdo Válido de Objetos XElement e XDocument.

Confira também

Aplica-se a

XDocument(Object[])

Inicializa uma nova instância da classe XDocument com o conteúdo especificado.

public:
 XDocument(... cli::array <System::Object ^> ^ content);
public XDocument (params 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.

Exemplos

O exemplo a seguir cria um documento e adiciona um comentário e um elemento a ele. Em seguida, ele compõe outro documento usando os resultados de uma consulta.

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 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. Em vez disso, você normalmente pode criar suas árvores XML com um nó raiz de XElement. 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.

Para obter detalhes sobre o conteúdo válido de um XDocument, consulte Conteúdo Válido de Objetos XElement e XDocument.

Confira também

Aplica-se a

XDocument(XDocument)

Inicializa uma nova instância da classe XDocument de um objeto XDocument existente.

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.

Comentários

Use este construtor para fazer uma cópia profunda de um XDocument.

Esse construtor atravessa todos os nós e atributos no documento especificado no other parâmetro e cria cópias de todos os nós à medida que monta o recém-inicializado 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.

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

content
Object[]

O conteúdo do documento.

Exemplos

O exemplo a seguir usa esse construtor para criar um documento.

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:

<?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. Em vez disso, você normalmente pode criar suas árvores XML com um nó raiz de XElement. 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.

Para obter detalhes sobre o conteúdo válido de um XDocument, consulte Conteúdo Válido de Objetos XElement e XDocument.

Confira também

Aplica-se a