2009-09-02 67 views
0

我要讀的XML:什麼是執行XML讀取最快的(代碼執行)方式?

<items> 
    <item> 
     <prop1>value1</prop1> 
     <prop2>value2</prop2> 
     <prop3>value3</prop3> 
    </item> 
    <item> 
     <prop1>value1</prop1> 
     <prop2>value2</prop2> 
     <prop3>value3</prop3> 
    </item> 
</items> 

並把該值轉換爲List<CLASS>

一些選項:

  • 使用XMLSerializer的反序列化到一個列表
  • 使用的XMLDocument讀取使用使用XPath的SelectNodes每個項目,並把值放入一個列表
  • 使用的XMLReader來讀取每個節點這些值放到一個列表
  • 其他選項...
+0

最快什麼?代碼,運行? – jro 2009-09-02 21:44:57

+0

最快運行。 – Zanoni 2009-09-02 22:27:57

+0

仔細考慮它需要多快。通常在優化和易於維護之間進行權衡。如果你對其進行簡要描述並發現它是一個瓶頸,那麼你總是可以嘗試不同的方法(不要忘記LINQ,正如Diplo先生提到的那樣)並對其進行基準測試。 – TrueWill 2009-09-02 23:31:13

回答

6

到目前爲止,我有看到最快n是使用XSD.exe創建一個XSD和Class來使用它,然後使用序列化。

-1

如果您使用的是dotnet,請安裝WCF入門套件。然後,您將有一個選項「將XML粘貼爲類型」,因此您可以將要看作序列化的XML剪切到剪貼板中,並將其作爲可序列化類型粘貼到代碼中。然後,您可以序列化XML並通過該類獲取值。