我有一個相當大的XML文件,我需要解析成.NET類結構(要映射到固定長度的記錄格式並通過MQ傳輸)。性能很重要,但不是絕對關鍵。XPathNavigator和XmlReader之間的速度差異有多大?
我幾乎總是用XPathNavigator
來讀取XML文件,因爲它比XmlReader
容易得多。另一方面,我知道XmlReader
比XPathNavigator
更快,因爲理論上它每次只讀取一個節點,而XPathNavigator
必須足夠讀取以執行XPath,可能是整個文檔。
我的問題是:它真的有多快?閱讀幾千個節點時它會產生顯着差異嗎?什麼轉折點我幾乎不得不切換到XmlReader
?或者是XPathNavigator
優化,以至於它總是一個很好的選擇?
我的大部分XML體驗都在相對較小的文件上,所以我正在尋找來自任何使用大文件的人的輸入。