Sdílet prostřednictvím


XElement.Load Metoda

Definice

Vytvoří nový XElement ze souboru určeného identifikátorem URI, z TextReadernebo z XmlReader.

Přetížení

Load(TextReader, LoadOptions)

XElement Načte z TextReader, volitelně zachování prázdných znaků a zachování informací o řádku.

Load(XmlReader, LoadOptions)

XElement Načte z volitelného zachování prázdného XmlReadermísta, nastavení základního identifikátoru URI a zachování informací o řádku.

Load(String, LoadOptions)

XElement Načte ze souboru volitelně zachování prázdného místa, nastavení základního identifikátoru URI a zachování informací o řádku.

Load(Stream, LoadOptions)

Vytvoří novou XElement instanci pomocí zadaného datového proudu, případně zachováním prázdného místa, nastavením základního identifikátoru URI a zachováním informací o řádku.

Load(TextReader)

Načte ze XElement souboru TextReader.

Load(String)

Načte soubor XElement .

Load(Stream)

Vytvoří novou XElement instanci pomocí zadaného datového proudu.

Load(XmlReader)

Načte z objektu XElement XmlReader.

Poznámky

Jednu z přetížení této metody můžete použít k načtení XElement ze souboru, souboru , TextReadernebo XmlReader.

Chcete-li vytvořit XElement z řetězce, který obsahuje XML, použijte Parse.

Load(TextReader, LoadOptions)

XElement Načte z TextReader, volitelně zachování prázdných znaků a zachování informací o řádku.

public:
 static System::Xml::Linq::XElement ^ Load(System::IO::TextReader ^ textReader, System::Xml::Linq::LoadOptions options);
public static System.Xml.Linq.XElement Load (System.IO.TextReader textReader, System.Xml.Linq.LoadOptions options);
static member Load : System.IO.TextReader * System.Xml.Linq.LoadOptions -> System.Xml.Linq.XElement
Public Shared Function Load (textReader As TextReader, options As LoadOptions) As XElement

Parametry

textReader
TextReader

Obsah TextReader se přečte XElement .

options
LoadOptions

Určuje LoadOptions chování prázdných znaků a určuje, jestli se mají načíst základní identifikátor URI a řádkové informace.

Návraty

XElement

Obsahuje XElement XML, který byl načten ze zadaného TextReadersouboru .

Příklady

Následující příklad načte XElement ze StringReader dvou různých způsobů: zachování prázdného místa a zachování prázdného místa. Pak použije dotaz k určení počtu uzlů prázdných znaků ve výsledném stromu XML.

TextReader sr;  
int whiteSpaceNodes;  

sr = new StringReader("<Root> <Child> </Child> </Root>");  
XElement xmlTree1 = XElement.Load(sr, LoadOptions.None);  
sr.Close();  
whiteSpaceNodes = xmlTree1  
    .DescendantNodesAndSelf()  
    .OfType<XText>()  
    .Where(tNode => tNode.ToString().Trim().Length == 0)  
    .Count();  
Console.WriteLine("Count of white space nodes (not preserving whitespace): {0}", whiteSpaceNodes);  

sr = new StringReader("<Root> <Child> </Child> </Root>");  
XElement xmlTree2 = XElement.Load(sr, LoadOptions.PreserveWhitespace);  
sr.Close();  
whiteSpaceNodes = xmlTree2  
    .DescendantNodesAndSelf()  
    .OfType<XText>()  
    .Where(tNode => tNode.ToString().Trim().Length == 0)  
    .Count();  
Console.WriteLine("Count of white space nodes (preserving whitespace): {0}", whiteSpaceNodes);  
Dim sr As TextReader  
Dim whiteSpaceNodes As Integer  

sr = New StringReader("<Root> <Child> </Child> </Root>")  
Dim xmlTree1 As XElement = XElement.Load(sr, LoadOptions.None)  
sr.Close()  
whiteSpaceNodes = xmlTree1 _  
    .DescendantNodesAndSelf() _  
    .OfType(Of XText)() _  
    .Where(Function(ByVal tNode As XNode) tNode.ToString().Trim().Length = 0) _  
    .Count()  
Console.WriteLine("Count of white space nodes (not preserving whitespace): {0}", whiteSpaceNodes)  

sr = New StringReader("<Root> <Child> </Child> </Root>")  
Dim xmlTree2 As XElement = XElement.Load(sr, LoadOptions.PreserveWhitespace)  
sr.Close()  
whiteSpaceNodes = xmlTree2 _  
    .DescendantNodesAndSelf() _  
    .OfType(Of XText)() _  
    .Where(Function(ByVal tNode As XNode) tNode.ToString().Trim().Length = 0) _  
    .Count()  
Console.WriteLine("Count of white space nodes (preserving whitespace): {0}", whiteSpaceNodes)  

Tento příklad vytvoří následující výstup:

Count of white space nodes (not preserving whitespace): 0  
Count of white space nodes (preserving whitespace): 3  

Následující příklad načte informace o řádku při načítání z TextReader. Pak vytiskne informace o řádcích.

TextReader sr = new StringReader(  
@"<Root>  
  <Child>  
    <GrandChild1/>  
    <GrandChild2/>  
  </Child>  
</Root>");  
XElement po = XElement.Load(sr,  
    LoadOptions.SetLineInfo);  
Console.WriteLine("{0}{1}{2}",  
    "Element Name".PadRight(20),  
    "Line".PadRight(5),  
    "Position");  
Console.WriteLine("{0}{1}{2}",  
    "------------".PadRight(20),  
    "----".PadRight(5),  
    "--------");  
foreach (XElement e in po.DescendantsAndSelf())  
    Console.WriteLine("{0}{1}{2}",  
        ("".PadRight(e.Ancestors().Count() * 2) + e.Name).PadRight(20),  
        ((IXmlLineInfo)e).LineNumber.ToString().PadRight(5),  
        ((IXmlLineInfo)e).LinePosition);  
Dim sr As TextReader = New StringReader( _  
    "<Root>" & Environment.NewLine & _  
    "  <Child>" & Environment.NewLine & _  
    "    <GrandChild1/>" & Environment.NewLine & _  
    "    <GrandChild2/>" & Environment.NewLine & _  
    "  </Child>" & Environment.NewLine & _  
    "</Root>")  
Dim po As XElement = XElement.Load(sr, LoadOptions.SetLineInfo)  
Console.WriteLine("{0}{1}{2}", _  
    "Element Name".PadRight(20), _  
    "Line".PadRight(5), _  
    "Position")  
Console.WriteLine("{0}{1}{2}", _  
    "------------".PadRight(20), _  
    "----".PadRight(5), _  
    "--------")  
For Each e As XElement In po.DescendantsAndSelf()  
    Console.WriteLine("{0}{1}{2}", _  
        ("".PadRight(e.Ancestors().Count() * 2) & e.Name.ToString).PadRight(20), _  
        (DirectCast(e, IXmlLineInfo)).LineNumber.ToString().PadRight(5), _  
        (DirectCast(e, IXmlLineInfo)).LinePosition)  
Next  

Tento příklad vytvoří následující výstup:

Element Name        Line Position  
------------        ---- --------  
Root                1    2  
  Child             2    4  
    GrandChild1     3    6  
    GrandChild2     4    6  

Poznámky

Pokud je zdrojový kód XML odsazený, nastavení PreserveWhitespace příznaku options způsobí, že čtenář přečte všechny prázdné znaky ve zdrojovém XML. Uzly typu XText se vytvářejí pro významné i nevýznamné prázdné místo.

Pokud je zdrojový kód XML odsazený, nenastavíte PreserveWhitespace příznak options , aby čtenář ignoroval všechny nevýznamné prázdné znaky ve zdrojovém XML. Strom XML se vytvoří bez jakýchkoli textových uzlů pro nevýznamné prázdné místo.

Pokud zdrojový XML není odsazený, nastavení příznaku PreserveWhitespace options nemá žádný vliv. Významné prázdné místo je stále zachováno a neexistují žádné rozsahy nevýznamného prázdného místa, které by mohly způsobit vytvoření více prázdných textových uzlů.

Další informace najdete v tématu Zachování prázdného místa při načítání nebo analýze XML a zachování prázdného místa při serializaci.

Slouží Parse k vytvoření XElement řetězce obsahujícího XML.

Nastavení SetBaseUri nebude mít vliv při načítání z objektu TextReader.

Pokud nastavíte příznak, dojde k trestu výkonu SetLineInfo .

Informace o řádku jsou přesné okamžitě po načtení dokumentu XML. Pokud po načtení dokumentu upravíte strom XML, můžou se informace o řádku stát bez významu.

LINQ to XML funkce načítání je postavena na XmlReader. Proto můžete zachytit všechny výjimky, které jsou vyvolán metodami XmlReader.Create přetížení a XmlReader metodami, které čtou a parsují dokument.

Viz také

Platí pro

Load(XmlReader, LoadOptions)

XElement Načte z volitelného zachování prázdného XmlReadermísta, nastavení základního identifikátoru URI a zachování informací o řádku.

public:
 static System::Xml::Linq::XElement ^ Load(System::Xml::XmlReader ^ reader, System::Xml::Linq::LoadOptions options);
public static System.Xml.Linq.XElement Load (System.Xml.XmlReader reader, System.Xml.Linq.LoadOptions options);
static member Load : System.Xml.XmlReader * System.Xml.Linq.LoadOptions -> System.Xml.Linq.XElement
Public Shared Function Load (reader As XmlReader, options As LoadOptions) As XElement

Parametry

reader
XmlReader

AXmlReader, který bude přečteno pro obsah .XElement

options
LoadOptions

Určuje LoadOptions chování prázdných znaků a určuje, jestli se mají načíst základní identifikátor URI a řádkové informace.

Návraty

XElement

Obsahuje XElement XML, který byl načten ze zadaného XmlReadersouboru .

Příklady

Následující příklad načte informace o řádku, které se načte XmlReaderz . Pak vytiskne informace o řádcích.

string markup =  
@"<Root>  
    <Child>  
        <GrandChild/>  
    </Child>  
</Root>";  

// Create a reader and move to the content.  
using (XmlReader nodeReader = XmlReader.Create(new StringReader(markup)))  
{  
    // the reader must be in the Interactive state in order to  
    // Create a LINQ to XML tree from it.  
    nodeReader.MoveToContent();  

    XElement xRoot = XElement.Load(nodeReader, LoadOptions.SetLineInfo);  
    Console.WriteLine("{0}{1}{2}",  
        "Element Name".PadRight(20),  
        "Line".PadRight(5),  
        "Position");  
    Console.WriteLine("{0}{1}{2}",  
        "------------".PadRight(20),  
        "----".PadRight(5),  
        "--------");  
    foreach (XElement e in xRoot.DescendantsAndSelf())  
        Console.WriteLine("{0}{1}{2}",  
            ("".PadRight(e.Ancestors().Count() * 2) + e.Name).PadRight(20),  
            ((IXmlLineInfo)e).LineNumber.ToString().PadRight(5),  
            ((IXmlLineInfo)e).LinePosition);  
}  
Dim markup As String = _  
    "<Root>" & Environment.NewLine & _  
    "    <Child>" & Environment.NewLine & _  
    "        <GrandChild/>" & Environment.NewLine & _  
    "    </Child>" & Environment.NewLine & _  
    "</Root>"  

' Create a reader and move to the content.  
Using nodeReader As XmlReader = XmlReader.Create(New StringReader(markup))  

    ' the reader must be in the Interactive state in order to  
    ' Create a LINQ to XML tree from it.  
    nodeReader.MoveToContent()  

    Dim xRoot As XElement = XElement.Load(nodeReader, LoadOptions.SetLineInfo)  
    Console.WriteLine("{0}{1}{2}", _  
        "Element Name".PadRight(20), _  
        "Line".PadRight(5), _  
        "Position")  
    Console.WriteLine("{0}{1}{2}", _  
        "------------".PadRight(20), _  
        "----".PadRight(5), _  
        "--------")  
    For Each e As XElement In xRoot.DescendantsAndSelf()  
        Console.WriteLine("{0}{1}{2}", _  
            ("".PadRight(e.Ancestors().Count() * 2) & e.Name.ToString).PadRight(20), _  
            (DirectCast(e, IXmlLineInfo)).LineNumber.ToString().PadRight(5), _  
            (DirectCast(e, IXmlLineInfo)).LinePosition)  
    Next  
End Using  

Tento příklad vytvoří následující výstup:

Element Name        Line Position  
------------        ---- --------  
Root                1    2  
  Child             2    6  
    GrandChild      3    10  

Poznámky

XmlNodeReader Vytvořením dokumentu DOM a následným použitím XmlNodeReader příkazu k vytvoření XElementtéto metody můžete vytvořit kopii dokumentu DOM ve stromu LINQ to XML.

Slouží Parse k vytvoření XElement řetězce obsahujícího XML.

Nastavení PreserveWhitespace není platné při načítání z objektu XmlReader. Bude XmlReader nakonfigurovaná tak, aby buď četla prázdné znaky, nebo ne. Strom LINQ to XML se naplní prázdnými uzly, které čtečka otevře. Toto chování bude bez ohledu na to, jestli PreserveWhitespace je nastavená nebo ne.

Může XmlReader mít platný základní identifikátor URI nebo ne. Pokud nastavíte SetBaseUri, základní identifikátor URI se nastaví ve stromu XML ze základního identifikátoru XmlReaderURI, který je hlášen .

Může XmlReader mít platné informace o řádku nebo ne. Pokud nastavíte SetLineInfo, budou informace o řádku nastaveny ve stromu XML z informací řádku, které jsou hlášeny XmlReader.

Pokud nastavíte příznak, dojde k trestu výkonu SetLineInfo .

Informace o řádku jsou přesné okamžitě po načtení dokumentu XML. Pokud po načtení dokumentu upravíte strom XML, můžou se informace o řádku stát bez významu.

LINQ to XML funkce načítání je postavena na XmlReader. Proto můžete zachytit všechny výjimky, které jsou vyvolán metodami XmlReader.Create přetížení a XmlReader metodami, které čtou a parsují dokument.

Viz také

Platí pro

Load(String, LoadOptions)

XElement Načte ze souboru volitelně zachování prázdného místa, nastavení základního identifikátoru URI a zachování informací o řádku.

public:
 static System::Xml::Linq::XElement ^ Load(System::String ^ uri, System::Xml::Linq::LoadOptions options);
public static System.Xml.Linq.XElement Load (string uri, System.Xml.Linq.LoadOptions options);
static member Load : string * System.Xml.Linq.LoadOptions -> System.Xml.Linq.XElement
Public Shared Function Load (uri As String, options As LoadOptions) As XElement

Parametry

uri
String

Řetězec identifikátoru URI odkazující na soubor, který se má načíst do XElementsouboru .

options
LoadOptions

Určuje LoadOptions chování prázdných znaků a určuje, jestli se mají načíst základní identifikátor URI a řádkové informace.

Návraty

XElement

Obsahuje XElement obsah zadaného souboru.

Příklady

Následující příklad načte XElement ze souboru dvěma různými způsoby: zachování prázdného místa a zachování prázdného místa. Pak použije dotaz k určení počtu uzlů prázdných znaků ve výsledném stromu XML.

XElement xmlTree1 = XElement.Parse("<Root> <Child>  </Child> </Root>", LoadOptions.PreserveWhitespace);  
xmlTree1.Save("Tree.xml");  
Console.WriteLine(xmlTree1);  

int whiteSpaceNodes;  
XElement xmlTree2 = XElement.Load("Tree.xml",  
    LoadOptions.None);  
whiteSpaceNodes = xmlTree2  
    .DescendantNodesAndSelf()  
    .OfType<XText>()  
    .Where(tNode => tNode.ToString().Trim().Length == 0)  
    .Count();  
Console.WriteLine("Count of white space nodes (not preserving whitespace): {0}", whiteSpaceNodes);  

XElement xmlTree3 = XElement.Load("Tree.xml",  
    LoadOptions.PreserveWhitespace);  
whiteSpaceNodes = xmlTree3  
    .DescendantNodesAndSelf()  
    .OfType<XText>()  
    .Where(tNode => tNode.ToString().Trim().Length == 0)  
    .Count();  
Console.WriteLine("Count of white space nodes (preserving whitespace): {0}", whiteSpaceNodes);  
Dim xmlTree1 As XElement = XElement.Parse("<Root> <Child>  </Child> </Root>", LoadOptions.PreserveWhitespace)  
xmlTree1.Save("Tree.xml")  
Console.WriteLine(xmlTree1)  

Dim whiteSpaceNodes As Integer  
Dim xmlTree2 As XElement = XElement.Load("Tree.xml", LoadOptions.None)  
whiteSpaceNodes = xmlTree2 _  
                  .DescendantNodesAndSelf() _  
                  .OfType(Of XText)() _  
                  .Where(Function(ByVal tNode As XNode) tNode.ToString().Trim().Length = 0) _  
                  .Count()  
Console.WriteLine("Count of white space nodes (not preserving whitespace): {0}", whiteSpaceNodes)  

Dim xmlTree3 As XElement = XElement.Load("Tree.xml", LoadOptions.PreserveWhitespace)  
whiteSpaceNodes = xmlTree3 _  
                  .DescendantNodesAndSelf() _  
                  .OfType(Of XText)() _  
                  .Where(Function(ByVal tNode As XNode) tNode.ToString().Trim().Length = 0) _  
                  .Count()  
Console.WriteLine("Count of white space nodes (preserving whitespace): {0}", whiteSpaceNodes)  

Tento příklad vytvoří následující výstup:

<Root> <Child>  </Child> </Root>  
Count of white space nodes (not preserving whitespace): 0  
Count of white space nodes (preserving whitespace): 3  

Následující příklad načte základní identifikátor URI a informace řádku při načtení souboru. Pak vytiskne základní identifikátor URI a informace o řádku.

Tento příklad používá následující soubor prostředků: Ukázkový soubor XML: Typická nákupní objednávka (LINQ to XML).

XElement po = XElement.Load("PurchaseOrder.xml",  
    LoadOptions.SetBaseUri | LoadOptions.SetLineInfo);  
string[] splitUri = po.BaseUri.Split('/');  
Console.WriteLine("BaseUri: {0}", splitUri[splitUri.Length - 1]);  
Console.WriteLine();  
Console.WriteLine("{0}{1}{2}",  
    "Element Name".PadRight(20),  
    "Line".PadRight(5),  
    "Position");  
Console.WriteLine("{0}{1}{2}",  
    "------------".PadRight(20),  
    "----".PadRight(5),  
    "--------");  
foreach (XElement e in po.DescendantsAndSelf())  
    Console.WriteLine("{0}{1}{2}",  
        ("".PadRight(e.Ancestors().Count() * 2) + e.Name).PadRight(20),  
        ((IXmlLineInfo)e).LineNumber.ToString().PadRight(5),  
        ((IXmlLineInfo)e).LinePosition);  
Dim po As XElement = XElement.Load("PurchaseOrder.xml", LoadOptions.SetBaseUri Or LoadOptions.SetLineInfo)  
Dim splitUri() As String = po.BaseUri.Split("/")  
Console.WriteLine("BaseUri: {0}", splitUri(splitUri.Length - 1))  
Console.WriteLine()  
Console.WriteLine("{0}{1}{2}", _  
    "Element Name".PadRight(20), _  
    "Line".PadRight(5), _  
    "Position")  
Console.WriteLine("{0}{1}{2}", _  
    "------------".PadRight(20), _  
    "----".PadRight(5), _  
    "--------")  
For Each e As XElement In po.DescendantsAndSelf()  
    Console.WriteLine("{0}{1}{2}", _  
        ("".PadRight(e.Ancestors().Count() * 2) & e.Name.ToString()).PadRight(20), _  
        (DirectCast(e, IXmlLineInfo)).LineNumber.ToString().PadRight(5), _  
        (DirectCast(e, IXmlLineInfo)).LinePosition)  
Next  

Tento příklad vytvoří následující výstup:

BaseUri: PurchaseOrder.xml  

Element Name        Line Position  
------------        ---- --------  
PurchaseOrder       2    2  
  Address           3    4  
    Name            4    6  
    Street          5    6  
    City            6    6  
    State           7    6  
    Zip             8    6  
    Country         9    6  
  Address           11   4  
    Name            12   6  
    Street          13   6  
    City            14   6  
    State           15   6  
    Zip             16   6  
    Country         17   6  
  DeliveryNotes     19   4  
  Items             20   4  
    Item            21   6  
      ProductName   22   8  
      Quantity      23   8  
      USPrice       24   8  
      Comment       25   8  
    Item            27   6  
      ProductName   28   8  
      Quantity      29   8  
      USPrice       30   8  
      ShipDate      31   8  

Poznámky

Pokud je zdrojový kód XML odsazený, nastavení PreserveWhitespace příznaku options způsobí, že čtenář přečte všechny prázdné znaky ve zdrojovém XML. Uzly typu XText se vytvářejí pro významné i nevýznamné prázdné místo.

Pokud je zdrojový kód XML odsazený, nenastavíte PreserveWhitespace příznak options , aby čtenář ignoroval všechny nevýznamné prázdné znaky ve zdrojovém XML. Strom XML se vytvoří bez jakýchkoli textových uzlů pro nevýznamné prázdné místo.

Pokud zdrojový XML není odsazený, nastavení příznaku PreserveWhitespace options nemá žádný vliv. Významné prázdné místo je stále zachováno a neexistují žádné rozsahy nevýznamného prázdného místa, které by mohly způsobit vytvoření více prázdných textových uzlů.

Další informace najdete v tématu Zachování prázdného místa při načítání nebo analýze XML a zachování prázdného místa při serializaci.

Slouží Parse k vytvoření XElement řetězce obsahujícího XML.

Pokud nastavíte SetBaseUri a příznaky nastavíte, dojde k trestům výkonu SetLineInfo .

Základní identifikátor URI a informace o řádku jsou přesné hned po načtení dokumentu XML. Pokud po načtení dokumentu upravíte strom XML, může se základní identifikátor URI a řádkové informace stát bez významu.

LINQ to XML funkce načítání je postavena na XmlReader. Proto můžete zachytit všechny výjimky, které jsou vyvolán metodami XmlReader.Create přetížení a XmlReader metodami, které čtou a parsují dokument.

Viz také

Platí pro

Load(Stream, LoadOptions)

Vytvoří novou XElement instanci pomocí zadaného datového proudu, případně zachováním prázdného místa, nastavením základního identifikátoru URI a zachováním informací o řádku.

public:
 static System::Xml::Linq::XElement ^ Load(System::IO::Stream ^ stream, System::Xml::Linq::LoadOptions options);
public static System.Xml.Linq.XElement Load (System.IO.Stream stream, System.Xml.Linq.LoadOptions options);
static member Load : System.IO.Stream * System.Xml.Linq.LoadOptions -> System.Xml.Linq.XElement
Public Shared Function Load (stream As Stream, options As LoadOptions) As XElement

Parametry

stream
Stream

Datový proud obsahující data XML.

options
LoadOptions

Objekt LoadOptions , který určuje, zda se mají načíst základní identifikátor URI a informace o řádku.

Návraty

XElement

Objekt XElement použitý ke čtení dat, která datový proud obsahuje.

Poznámky

LINQ to XML funkce načítání je postavena na XmlReader. Proto můžete zachytit všechny výjimky, které jsou vyvolán metodami XmlReader.Create přetížení a XmlReader metodami, které čtou a parsují dokument.

Pokud potřebujete upravit XmlReaderSettings, postupujte takto:

  1. XmlReader Vytvořte funkci voláním jednoho z Create přetížení, které přebírají XmlReaderSettings jako parametr.

  2. Předejte ho XmlReader jednomu z XElementLoad přetížení, které přebírá XmlReader jako parametr.

Platí pro

Load(TextReader)

Načte ze XElement souboru TextReader.

public:
 static System::Xml::Linq::XElement ^ Load(System::IO::TextReader ^ textReader);
public static System.Xml.Linq.XElement Load (System.IO.TextReader textReader);
static member Load : System.IO.TextReader -> System.Xml.Linq.XElement
Public Shared Function Load (textReader As TextReader) As XElement

Parametry

textReader
TextReader

Obsah TextReader se přečte XElement .

Návraty

XElement

Obsahuje XElement XML, který byl načten ze zadaného TextReadersouboru .

Příklady

Následující příklad načte element z objektu StringReader.

TextReader sr = new StringReader("<Root><Child/></Root>");  
XElement xmlTree = XElement.Load(sr);  
sr.Close();  
Console.WriteLine(xmlTree);  
Dim sr As TextReader = New StringReader("<Root><Child/></Root>")  
Dim xmlTree As XElement = XElement.Load(sr)  
sr.Close()  
Console.WriteLine(xmlTree)  

Tento příklad vytvoří následující výstup:

<Root>  
  <Child />  
</Root>  

Poznámky

Tato metoda načte nezpracovaný XML do stromu XML. Zahodí všechny nevýznamné prázdné místo v souboru.

LINQ to XML funkce načítání je postavena na XmlReader. Proto můžete zachytit všechny výjimky, které jsou vyvolán metodami XmlReader.Create přetížení a XmlReader metodami, které čtou a parsují dokument.

Viz také

Platí pro

Load(String)

Načte soubor XElement .

public:
 static System::Xml::Linq::XElement ^ Load(System::String ^ uri);
public static System.Xml.Linq.XElement Load (string uri);
static member Load : string -> System.Xml.Linq.XElement
Public Shared Function Load (uri As String) As XElement

Parametry

uri
String

Řetězec identifikátoru URI odkazující na soubor, který se má načíst do nového XElement.

Návraty

XElement

Obsahuje XElement obsah zadaného souboru.

Příklady

Následující příklad vytvoří strom XML, uloží ho do souboru a pak tuto metodu XElement použije k načtení ze souboru.

XElement xmlTree1 = new XElement("Root",  
    new XElement("Child", "content")  
);  
xmlTree1.Save("Tree.xml");  

XElement xmlTree2 = XElement.Load("Tree.xml");  
Console.WriteLine(xmlTree2.Name);  
Dim xmlTree1 As XElement = _   
        <Root>  
            <Child>Content</Child>  
        </Root>  
xmlTree1.Save("Tree.xml")  

Dim xmlTree2 As XElement = XElement.Load("Tree.xml")  
Console.WriteLine(xmlTree2.Name)  

Tento příklad vytvoří následující výstup:

Root  

Poznámky

Tato metoda načte nezpracovaný XML do stromu XML. Zahodí všechny nevýznamné prázdné místo v souboru.

LINQ to XML funkce načítání je postavena na XmlReader. Proto můžete zachytit všechny výjimky, které jsou vyvolán metodami XmlReader.Create přetížení a XmlReader metodami, které čtou a parsují dokument.

Viz také

Platí pro

Load(Stream)

Vytvoří novou XElement instanci pomocí zadaného datového proudu.

public:
 static System::Xml::Linq::XElement ^ Load(System::IO::Stream ^ stream);
public static System.Xml.Linq.XElement Load (System.IO.Stream stream);
static member Load : System.IO.Stream -> System.Xml.Linq.XElement
Public Shared Function Load (stream As Stream) As XElement

Parametry

stream
Stream

Datový proud, který obsahuje data XML.

Návraty

XElement

Objekt XElement použitý ke čtení dat obsažených v datovém proudu.

Poznámky

Pokud chcete řídit možnosti načtení, použijte Load přetížení, které přebírá LoadOptions jako parametr.

LINQ to XML funkce načítání je postavena na XmlReader. Proto můžete zachytit všechny výjimky, které jsou vyvolán metodami XmlReader.Create přetížení a XmlReader metodami, které čtou a parsují dokument.

Pokud potřebujete upravit XmlReaderSettings, postupujte takto:

  1. XmlReader Vytvořte funkci voláním jednoho z Create přetížení, které přebírají XmlReaderSettings jako parametr.

  2. Předejte ho XmlReader jednomu z XElementLoad přetížení, které přebírá XmlReader jako parametr.

Platí pro

Load(XmlReader)

Načte z objektu XElement XmlReader.

public:
 static System::Xml::Linq::XElement ^ Load(System::Xml::XmlReader ^ reader);
public static System.Xml.Linq.XElement Load (System.Xml.XmlReader reader);
static member Load : System.Xml.XmlReader -> System.Xml.Linq.XElement
Public Shared Function Load (reader As XmlReader) As XElement

Parametry

reader
XmlReader

AXmlReader, který bude přečteno pro obsah .XElement

Návraty

XElement

Obsahuje XElement XML, který byl načten ze zadaného XmlReadersouboru .

Příklady

Následující příklad vytvoří dokument DOM, vytvoří XmlNodeReader z dokumentu DOM instanci stromu ze čtenáře. Tento kód efektivně zkopíruje dokument DOM do LINQ to XML stromu.

// Create a DOM document with some content.  
XmlDocument doc = new XmlDocument();  
XmlElement child = doc.CreateElement("Child");  
child.InnerText = "child contents";  
XmlElement root = doc.CreateElement("Root");  
root.AppendChild(child);  
doc.AppendChild(root);  

// Create a reader and move to the content.  
using (XmlNodeReader nodeReader = new XmlNodeReader(doc)) {  
    // the reader must be in the Interactive state in order to  
    // Create a LINQ to XML tree from it.  
    nodeReader.MoveToContent();  

    XElement xRoot = XElement.Load(nodeReader);  
    Console.WriteLine(xRoot);  
}  
' Create a DOM document with some content.  
Dim doc As XmlDocument = New XmlDocument()  
Dim child As XmlElement = doc.CreateElement("Child")  
child.InnerText = "child contents"  
Dim root As XmlElement = doc.CreateElement("Root")  
root.AppendChild(child)  
doc.AppendChild(root)  

' Create a reader and move to the content.  
Using nodeReader = New XmlNodeReader(doc)  
    ' the reader must be in the Interactive state in order to  
    ' Create a LINQ to XML tree from it.  
    nodeReader.MoveToContent()  

    Dim xRoot As XElement = XElement.Load(nodeReader)  
    Console.WriteLine(xRoot)  
End Using  

Tento příklad vytvoří následující výstup:

<Root>  
  <Child>child contents</Child>  
</Root>  

Poznámky

XmlNodeReader Vytvořením dokumentu DOM a následným použitím XmlNodeReader příkazu k vytvoření XElementtéto metody můžete vytvořit kopii dokumentu DOM ve stromu LINQ to XML.

LINQ to XML funkce načítání je postavena na XmlReader. Proto můžete zachytit všechny výjimky, které jsou vyvolán metodami XmlReader.Create přetížení a XmlReader metodami, které čtou a parsují dokument.

Viz také

Platí pro