Číst v angličtině

Sdílet prostřednictvím


XObject.IXmlLineInfo.LineNumber Vlastnost

Definice

Získá číslo řádku, které podkladové XmlReader hlášení pro tento XObject.

int System.Xml.IXmlLineInfo.LineNumber { get; }

Hodnota vlastnosti

Int32

Číslo Int32 řádku hlášené tímto XObjectčíslem XmlReader .

Implementuje

Příklady

Tento příklad načte malý strom XML ze souboru a nastaví možnosti pro nastavení základního identifikátoru URI a zachování informací o řádku. Pak přidá další prvek, který neobsahuje informace o řádcích. Potom vytiskne informace o řádcích pro každý prvek ve stromu.

string markup = @"<Root>  
    <Child1 />  
    <Child2 />  
    <Child4 />  
</Root>";  

File.WriteAllText("Test.xml", markup);  

XElement po = XElement.Load("Test.xml",  
    LoadOptions.SetBaseUri | LoadOptions.SetLineInfo);  

// add a node to the tree.  
// the newly added node will not have line information.  
po.Element("Child2").AddAfterSelf(new XElement("Child3"));  

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).HasLineInfo() ?  
            ((IXmlLineInfo)e).LineNumber.ToString().PadRight(5) :  
            "",  
        ((IXmlLineInfo)e).HasLineInfo() ?  
            ((IXmlLineInfo)e).LinePosition.ToString() :  
            "No Line Information");  

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

BaseUri: Test.xml  

Element Name        Line Position  
------------        ---- --------  
Root                1    2  
  Child1            2    6  
  Child2            3    6  
  Child3            No Line Information  
  Child4            4    6  

Poznámky

Tato metoda je explicitní implementace člena rozhraní metody v IXmlLineInfo rozhraní, takže aby bylo možné tuto metodu volat, je nutné přetypovat na IXmlLineInfo.

Platí pro

Viz také