パフォーマンスが優れているXMLを解析するためにXDocument
withを使用しますか?xpath
例:タグを検索してxmlで値を取得するには
tags = xmlDoc.Descendants(xmlTag);
また
xml.SelectSingleNode("//root/node")
では、どちらが速くなりますか?
パフォーマンスが優れているXMLを解析するためにXDocument
withを使用しますか?xpath
例:タグを検索してxmlで値を取得するには
tags = xmlDoc.Descendants(xmlTag);
また
xml.SelectSingleNode("//root/node")
では、どちらが速くなりますか?
XPathはXMLを解析しません... XPathは、それをサポートする他のXMLAPIの上で使用されるクエリ言語です。(たとえば、XmlDocument
またはの上でXPathを使用できますXDocument
。)
どのクエリがより高速で便利かを見つけるには、実際のデータのサンプルに対して実際のXPathおよびLINQtoXMLクエリを試す必要があります。状況によってはXPathの方が高速であり、他の状況ではLINQtoXMLの方が高速であると思います。
ただし、クエリの実行速度が実際にコードのボトルネックであった場合は驚きます。それがボトルネックであるという証拠はありますか?まず、どれが最も読みやすいかを自問する必要があります。そのコードを実装し、それが十分に速いかどうかを確認します。