Aracılığıyla paylaş


XDocument.Parse Yöntem

Tanım

İsteğe bağlı olarak boşluk koruyan, temel URI'yi ayarlayan ve satır bilgilerini koruyan bir dizeden yeni XDocument bir oluşturur.

Aşırı Yüklemeler

Parse(String)

Dizeden yeni XDocument bir oluşturur.

Parse(String, LoadOptions)

İsteğe bağlı olarak boşluk koruyan, temel URI'yi ayarlayan ve satır bilgilerini koruyan bir dizeden yeni XDocument bir oluşturur.

Örnekler

Aşağıdaki örnek XML içeren bir dize oluşturur. Ardından dizeyi bir XDocumentiçine ayrıştırıyor.

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)  

Bu örnek aşağıdaki çıkışı oluşturur:

<!-- comment at the root level -->  
<Root>  
  <Child>Content</Child>  
</Root>  

Açıklamalar

Bu yöntem bir dizeyi ayrıştırarak bir XML ağacı oluşturur.

Parse(String)

Dizeden yeni XDocument bir oluşturur.

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

Parametreler

text
String

XML içeren bir dize.

Döndürülenler

XDocument

XDocument XML içeren dizeden doldurulmuş.

Örnekler

Aşağıdaki örnek XML içeren bir dize oluşturur. Ardından dizeyi bir XDocumentiçine ayrıştırıyor.

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)  

Bu örnek aşağıdaki çıkışı oluşturur:

<!-- comment at the root level -->  
<Root>  
  <Child>Content</Child>  
</Root>  

Açıklamalar

Bu yöntem boşluğu korumaz. XML ağacındaki boşluğu korumak istiyorsanız, parametresi olarak alan LoadOptions öğesinin aşırı yüklemesini Parse kullanın.

Daha fazla bilgi için bkz . XML'yi yüklerken veya ayrıştırırken boşluğu koruma ve Seri hale getirme sırasında boşluğu koruma.

LINQ to XML yükleme işlevselliği üzerine kurulmuşturXmlReader. Bu nedenle, aşırı yükleme yöntemleri ve XmlReader belgeyi XmlReader.Create okuyup ayrıştıran yöntemler tarafından oluşan özel durumları yakalayabilirsiniz.

Ayrıca bkz.

Şunlara uygulanır

Parse(String, LoadOptions)

İsteğe bağlı olarak boşluk koruyan, temel URI'yi ayarlayan ve satır bilgilerini koruyan bir dizeden yeni XDocument bir oluşturur.

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

Parametreler

text
String

XML içeren bir dize.

options
LoadOptions

LoadOptions Boşluk davranışını ve temel URI ile satır bilgilerinin yüklenip yüklenmeyeceğini belirten bir.

Döndürülenler

XDocument

XDocument XML içeren dizeden doldurulmuş.

Örnekler

Aşağıdaki örnek bir dizeyi içine XDocumentayrıştırmaktadır.

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

Bu örnek aşağıdaki çıkışı oluşturur:

nodes when preserving whitespace: 8  
nodes when not preserving whitespace: 4  

Açıklamalar

Kaynak XML girintiliyse, bayrağının PreserveWhitespace içinde options ayarlanması okuyucunun kaynak XML'deki tüm boşlukları okumasına neden olur. Türündeki XText düğümler hem önemli hem de önemsiz boşluklar için oluşturulur.

Kaynak XML girintiliyse, bayrağını PreserveWhitespace options içinde ayarlamamak okuyucunun kaynak XML'deki tüm önemsiz boşlukları yoksaymasına neden olur. XML ağacı, önemsiz boşluk için herhangi bir metin düğümü olmadan oluşturulur.

Kaynak XML girintili değilse, bayrağının içinde options ayarlanmasının PreserveWhitespace hiçbir etkisi olmaz. Önemli boşluklar korunmaya devam eder ve daha fazla boşluk metin düğümü oluşturulmasına neden olabilecek önemsiz boşluk yayılmaz.

Daha fazla bilgi için bkz . XML'yi yüklerken veya ayrıştırırken boşluğu koruma ve Seri hale getirme sırasında boşluğu koruma.

ayarı SetBaseUri bir String'den ayrıştırılırken geçerli değil.

Bayrağı ayarlarsanız SetLineInfo bir performans cezası uygulanır.

Satır bilgileri, XML belgesi yüklendikten hemen sonra doğrulanır. Belgeyi yükledikten sonra XML ağacını değiştirirseniz, satır bilgileri anlamsız hale gelebilir.

LINQ to XML yükleme işlevselliği üzerine kurulmuşturXmlReader. Bu nedenle, aşırı yükleme yöntemleri ve XmlReader belgeyi XmlReader.Create okuyup ayrıştıran yöntemler tarafından oluşan özel durumları yakalayabilirsiniz.

Ayrıca bkz.

Şunlara uygulanır