XDocument.Parse Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Crea un XDocument nuovo da un stringa, conservando facoltativamente spazio vuoto, impostando l'URI di base e mantenendo le informazioni sulla riga.
Overload
Parse(String) |
Crea un nuovo oggetto XDocument da una stringa. |
Parse(String, LoadOptions) |
Crea un XDocument nuovo da un stringa, conservando facoltativamente spazio vuoto, impostando l'URI di base e mantenendo le informazioni sulla riga. |
Esempio
Nell'esempio seguente viene creata una stringa contenente XML. Analizza quindi la stringa in un XDocumentoggetto .
string str =
@"<?xml version=""1.0""?>
<!-- comment at the root level -->
<Root>
<Child>Content</Child>
</Root>";
XDocument doc = XDocument.Parse(str);
Console.WriteLine(doc);
Dim str As String = _
"<?xml version= '1.0'?>" & _
"<!-- comment at the root level -->" & _
"<Root>" & _
" <Child>Content</Child>" & _
"</Root>"
Dim doc As XDocument = XDocument.Parse(str)
Console.WriteLine(doc)
Nell'esempio viene prodotto l'output seguente:
<!-- comment at the root level -->
<Root>
<Child>Content</Child>
</Root>
Commenti
Questo metodo analizza una stringa e crea un albero XML.
Parse(String)
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
Crea un nuovo oggetto XDocument da una stringa.
public:
static System::Xml::Linq::XDocument ^ Parse(System::String ^ text);
public static System.Xml.Linq.XDocument Parse (string text);
static member Parse : string -> System.Xml.Linq.XDocument
Public Shared Function Parse (text As String) As XDocument
Parametri
- text
- String
Stringa che contiene XML.
Restituisce
Oggetto XDocument popolato dalla stringa che contiene il codice XML.
Esempio
Nell'esempio seguente viene creata una stringa contenente XML. Analizza quindi la stringa in un XDocumentoggetto .
string str =
@"<?xml version=""1.0""?>
<!-- comment at the root level -->
<Root>
<Child>Content</Child>
</Root>";
XDocument doc = XDocument.Parse(str);
Console.WriteLine(doc);
Dim str As String = _
"<?xml version= '1.0'?>" & _
"<!-- comment at the root level -->" & _
"<Root>" & _
" <Child>Content</Child>" & _
"</Root>"
Dim doc As XDocument = XDocument.Parse(str)
Console.WriteLine(doc)
Nell'esempio viene prodotto l'output seguente:
<!-- comment at the root level -->
<Root>
<Child>Content</Child>
</Root>
Commenti
Questo metodo non mantiene lo spazio vuoto. Se si vuole mantenere lo spazio vuoto nell'albero XML, usare l'overload di Parse che accetta LoadOptions come parametro.
Per altre informazioni, vedere Mantenere lo spazio vuoto durante il caricamento o l'analisi di XML e La conservazione dello spazio vuotodurante la serializzazione.
la funzionalità di caricamento di LINQ to XML è basata su XmlReader. Pertanto, è possibile rilevare eventuali eccezioni generate dai metodi di overload e dai XmlReader.CreateXmlReader metodi che legge e analizzano il documento.
Vedi anche
Si applica a
Parse(String, LoadOptions)
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
- Origine:
- XDocument.cs
Crea un XDocument nuovo da un stringa, conservando facoltativamente spazio vuoto, impostando l'URI di base e mantenendo le informazioni sulla riga.
public:
static System::Xml::Linq::XDocument ^ Parse(System::String ^ text, System::Xml::Linq::LoadOptions options);
public static System.Xml.Linq.XDocument Parse (string text, System.Xml.Linq.LoadOptions options);
static member Parse : string * System.Xml.Linq.LoadOptions -> System.Xml.Linq.XDocument
Public Shared Function Parse (text As String, options As LoadOptions) As XDocument
Parametri
- text
- String
Stringa che contiene XML.
- options
- LoadOptions
Oggetto LoadOptions che specifica il comportamento dello spazio vuoto e se caricare l'URI di base e le informazioni sulla riga.
Restituisce
Oggetto XDocument popolato dalla stringa che contiene il codice XML.
Esempio
Nell'esempio seguente viene analizzata una stringa in un XDocumentoggetto .
string str =
@"<?xml version=""1.0""?>
<!-- comment at the root level -->
<Root>
<Child>Content</Child>
</Root>";
XDocument doc1 = XDocument.Parse(str, LoadOptions.PreserveWhitespace);
Console.WriteLine("nodes when preserving whitespace: {0}", doc1.DescendantNodes().Count());
XDocument doc2 = XDocument.Parse(str, LoadOptions.None);
Console.WriteLine("nodes when not preserving whitespace: {0}", doc2.DescendantNodes().Count());
Dim str As String = _
"<?xml version= '1.0'?>" & Environment.NewLine & _
"<!-- comment at the root level -->" & Environment.NewLine & _
"<Root>" & Environment.NewLine & _
" <Child>Content</Child>" & Environment.NewLine & _
"</Root>"
Dim doc1 As XDocument = XDocument.Parse(str, LoadOptions.PreserveWhitespace)
Console.WriteLine("nodes when preserving whitespace: {0}", doc1.DescendantNodes().Count())
Dim doc2 As XDocument = XDocument.Parse(str, LoadOptions.None)
Console.WriteLine("nodes when not preserving whitespace: {0}", doc2.DescendantNodes().Count())
Nell'esempio viene prodotto l'output seguente:
nodes when preserving whitespace: 8
nodes when not preserving whitespace: 4
Commenti
Se il valore XML di origine è rientro, l'impostazione del PreserveWhitespace flag causa options
la lettura di tutti gli spazi vuoti nel codice XML di origine. I nodi di tipo XText vengono creati per spazi vuoti significativi e insignificanti.
Se il formato XML di origine è rientro, non impostando il PreserveWhitespace flag options
, il lettore ignora tutti gli spazi vuoti insignificanti nel codice XML di origine. L'albero XML viene creato senza nodi di testo per spazi vuoti insignificanti.
Se il codice XML di origine non è rientro, l'impostazione del PreserveWhitespace flag in options
non ha alcun effetto. Spazi vuoti significativi vengono ancora mantenuti e non sono presenti spazi vuoti insignificanti che potrebbero causare la creazione di nodi di testo più spazi vuoti.
Per altre informazioni, vedere Mantenere lo spazio vuoto durante il caricamento o l'analisi di XML e La conservazione dello spazio vuotodurante la serializzazione.
L'impostazione non è valida durante l'analisi SetBaseUri da un Stringoggetto .
Se si imposta il SetLineInfo flag, si verifica una penalità delle prestazioni.
Le informazioni sulla riga sono accurate immediatamente dopo il caricamento del documento XML. Se si modifica l'albero XML dopo il caricamento del documento, le informazioni sulla riga potrebbero diventare senza significato.
la funzionalità di caricamento di LINQ to XML è basata su XmlReader. Pertanto, è possibile rilevare eventuali eccezioni generate dai metodi di overload e dai XmlReader.CreateXmlReader metodi che legge e analizzano il documento.