2010-07-08 42 views
0

我正在設計一個汽車目錄並需要使用XML文件進行存儲。在之前的項目中,我用Linq手動編輯XML文件。但是,我遇到了XML序列化,並認爲這可能是更好的方法。目錄中的每個項目都是CarItem,並且包含各種屬性。該目錄可以包含幾百輛汽車,我擔心性能。如果我反序列化XML文件,所有的CarItems會立即被實例化嗎?有沒有辦法讓我能夠根據參數選擇哪個對象被反序列化?例如,我想說「如果汽車顏色屬性是紅色的,那麼只會將紅色CarItems反序列化爲對象」。XML序列化/反序列化每個項目

感謝您的任何建議

+0

Hi Superexsl, 你能用一些代碼來澄清你打算如何進行反序列化嗎?有幾種方法可以解決這個問題,答案可能取決於你的方法。 – 2010-07-08 16:43:13

+0

嗨樹。我還沒有編寫任何序列化/反序列化代碼,所以我接受任何建議。謝謝回覆。 – XSL 2010-07-08 16:55:22

回答

1

這裏有不少文章,講述瞭如何使用XDocument控制你將其拉出並實例化爲對象/標量的好例子。

Shawn Oster的帖子在this線程我相信是非常接近你想用linq。您可以添加where子句以輕鬆滿足您的要求。

+0

這似乎應該完成這項工作。謝謝您的幫助! – XSL 2010-07-08 17:17:04

+0

yw :)/15char .. – 2010-07-09 00:33:38

1

是的,他們都將被實例化。然而,對於具有一些簡單字段的類來說,幾百個對象不是什麼大問題。試一試並檢查性能。

+0

感謝您的回覆。在那種情況下,我希望爲了能夠提高性能(因爲它在移動設備上),可能會有比直接序列化/反序列化更好的方法。 – XSL 2010-07-08 16:56:19