XDocument Costruttori

Definizione

Inizializza una nuova istanza della classe XDocument.

Overload

XDocument()

Inizializza una nuova istanza della classe XDocument.

XDocument(Object[])

Inizializza una nuova istanza della classe XDocument con il contenuto specificato.

XDocument(XDocument)

Inizializza una nuova istanza della classe XDocument da un oggetto XDocument esistente.

XDocument(XDeclaration, Object[])

Inizializza una nuova istanza della classe XDocument con l'oggetto XDeclaration e il contenuto specificati.

Esempio

Nell'esempio seguente viene creato un documento e quindi viene aggiunto un commento e un elemento. Compone quindi un altro documento usando i risultati di una 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);  

Nell'esempio viene prodotto l'output seguente:

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

Commenti

I costruttori di overload consentono di creare un nuovo oggetto vuoto XDocument; per creare un oggetto XDocument con un contenuto iniziale specificato e per creare un oggetto XDocument come copia di un altro XDocument oggetto.

Non sono molti gli scenari in cui è richiesta la creazione di un oggetto XDocument. In genere, è invece possibile creare alberi XML con un nodo radice XElement. A meno di particolari esigenze che richiedono la creazione di un documento, ad esempio perché è necessario creare istruzioni di elaborazione e commenti al primo livello o supportare tipi di documento, è consigliabile usare XElement come nodo radice.

Per informazioni dettagliate sul contenuto valido di un XDocumentoggetto , vedere Contenuto valido di oggetti XElement e XDocument.

XDocument()

Inizializza una nuova istanza della classe XDocument.

public XDocument ();

Esempio

Nell'esempio seguente viene creato un nuovo documento e quindi viene aggiunto un commento e un elemento.

XDocument doc = new XDocument();  
doc.Add(new XComment("This is a comment"));  
doc.Add(new XElement("Root", "content"));  
Console.WriteLine(doc);  

Nell'esempio viene prodotto l'output seguente:

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

Commenti

Non sono molti gli scenari in cui è richiesta la creazione di un oggetto XDocument. In genere, è invece possibile creare alberi XML con un nodo radice XElement. A meno di particolari esigenze che richiedono la creazione di un documento, ad esempio perché è necessario creare istruzioni di elaborazione e commenti al primo livello o supportare tipi di documento, è consigliabile usare XElement come nodo radice.

Per informazioni dettagliate sul contenuto valido di un XDocumentoggetto , vedere Contenuto valido di oggetti XElement e XDocument.

Vedi anche

Si applica a

.NET 7 e altre versioni
Prodotto Versioni
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

XDocument(Object[])

Inizializza una nuova istanza della classe XDocument con il contenuto specificato.

public XDocument (params object[] content);
public XDocument (params object?[] content);

Parametri

content
Object[]

Elenco di parametri di oggetti contenuto da aggiungere a questo documento.

Esempio

Nell'esempio seguente viene creato un documento e quindi viene aggiunto un commento e un elemento. Compone quindi un altro documento usando i risultati di una 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);  

Nell'esempio viene prodotto l'output seguente:

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

Commenti

Non sono molti gli scenari in cui è richiesta la creazione di un oggetto XDocument. In genere, è invece possibile creare alberi XML con un nodo radice XElement. A meno di particolari esigenze che richiedono la creazione di un documento, ad esempio perché è necessario creare istruzioni di elaborazione e commenti al primo livello o supportare tipi di documento, è consigliabile usare XElement come nodo radice.

Per informazioni dettagliate sul contenuto valido di un XDocumentoggetto , vedere Contenuto valido di oggetti XElement e XDocument.

Vedi anche

Si applica a

.NET 7 e altre versioni
Prodotto Versioni
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

XDocument(XDocument)

Inizializza una nuova istanza della classe XDocument da un oggetto XDocument esistente.

public XDocument (System.Xml.Linq.XDocument other);

Parametri

other
XDocument

XDocument che verrà copiato.

Commenti

Usare questo costruttore per creare una copia approfondita di un XDocumentoggetto .

Questo costruttore attraversa tutti i nodi e gli attributi nel documento specificato nel other parametro e crea copie di tutti i nodi in quanto assembla il nuovo oggetto inizializzato XDocument.

Vedi anche

Si applica a

.NET 7 e altre versioni
Prodotto Versioni
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

XDocument(XDeclaration, Object[])

Inizializza una nuova istanza della classe XDocument con l'oggetto XDeclaration e il contenuto specificati.

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

Parametri

declaration
XDeclaration

XDeclaration per il documento.

content
Object[]

Contenuto del documento.

Esempio

Nell'esempio seguente viene usato questo costruttore per creare un 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"));  

Nell'esempio viene prodotto l'output seguente:

<?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>  

Commenti

Non sono molti gli scenari in cui è richiesta la creazione di un oggetto XDocument. In genere, è invece possibile creare alberi XML con un nodo radice XElement. A meno di particolari esigenze che richiedono la creazione di un documento, ad esempio perché è necessario creare istruzioni di elaborazione e commenti al primo livello o supportare tipi di documento, è consigliabile usare XElement come nodo radice.

Per informazioni dettagliate sul contenuto valido di un XDocumentoggetto , vedere Contenuto valido di oggetti XElement e XDocument.

Vedi anche

Si applica a

.NET 7 e altre versioni
Prodotto Versioni
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0