阅读xml的最佳方式

kev*_*vin -1 c# xml linq xpath xmlreader

什么是阅读XML的最佳方式?

我的xml就像我会有很多

<A> and <B>, not sure how many will be there and I have to read the whole xml file.
Run Code Online (Sandbox Code Playgroud)

我不能说子元素喜欢

<180> will be there under <A> for sure. So does the other element.
Run Code Online (Sandbox Code Playgroud)

但如果它在那里我必须阅读它.

我应该使用LINQ或XPath还是XMLReader?哪一个更好更容易?

        <A>
            <180>20130218</180>  ///180 is here
            <170>5</170>
            <220>20080210</220>
            <730 CLID='AAA' KW='BBB' KW2='INTERNATIONAL'>
                <731>BBB INTERNATIONAL AG</731>
                <732>XXX</732>
                <735>US66</735>
                <734>YYY</734>
            </730>
            <300>
                <301>
                    <320>20071100</320>
                    <310>12345</310>
                </301>
                <330>US</330>
            </300>
        </A>
        <A>                    ///180 is not here
            <170>5</170>
            <220>20080210</220>
            <730 CLID='AAA' KW='BBB' KW2='WORLD'>
                <731>BBB INTERNATIONAL AG</731>
                <734>YYY</734>
            </730>
            <300>
                <301>
                    <320>20071100</320>
                    <310>12345</310>
                </301>
                <330>UK</330>
            </300>
        </A>
        <B>
            <180>20130218</180>
            <170>5</170>
            <220>20080210</220>
            <730 CLID='AAA' KW='BBB' KW2='INTERNATIONAL'>
                <731>BBB INTERNATIONAL AG</731>
                <732>XXX</732>
                <733>JP</733>
                <735>JP66</735>
                <734>YYY</734>
            </730>
            <300>
                <301>
                    <320>20071100</320>
                    <310>12345</310>
                </301>
                <330>JP</330>
            </300>
        </B>
Run Code Online (Sandbox Code Playgroud)

Hen*_*man 6

我应该使用LINQ或XPath还是XMLReader?哪一个更好更容易?

XDocument(Linq-to-XML)将是最简单的.它可能会做你想要的,但你应该更清楚所期望的结果.

XML可以大到150 KB.

没问题.当你达到150 MB时才开始考虑XmlReader.