2011-03-24 48 views
0

當我的應用程序關閉或停用時,我需要存儲基本對象(每個對象中最多有5個適當的對象)。現在我明白了我們提供給我們的事件處理程序,但我不太確定如何去保存對象,以便稍後調用它們。在wp7中保存到xml文件和序列化之間的區別?

我最初的想法是將對象存儲到獨立存儲中的xml文件中,只需在應用程序再次打開時簡單地讀取xml文件並根據需要重新加載所有對象即可。但是當談到墓碑時,我一直聽到序列化的消息。

現在,這提出了一些問題:

1)是系列化優於保存到一個XML文件在這種情況下使用?

2.)如果兩個商店的數據都在稍後時間被調用,那麼兩者之間的區別是什麼?

3.)爲什麼序列化甚至是一個選項?是因爲它的速度更快還是使用更少的資源?

4.)如果序列化是在這種情況下走的路,那麼可以開始哪些資源?

在此先感謝。

+1

序列化和Xml不是相互排斥。序列化是將對象轉換爲平面字節數組表示的行爲。當序列化到一個Xml文件時,這個數組是一個字符串 - 一個字符數組 - 以Xml格式。請參閱 - http://en.wikipedia.org/wiki/Serialization#Human-readable_serialization – 2011-03-24 06:26:26

回答

2

抱歉,我沒有足夠的評論點。然而,序列化是將對象轉換爲可以保存在應用程序之外的格式的通用術語。或者在某些情況下在應用程序中使用。您可以使用不同的格式進行序列化,並且dotNET框架提供二進制序列化,將對象轉換爲字節數組或XML序列化,並將其轉換爲XML。

你不會說你是否試圖持續少量的對象(例如應用程序配置數據)或大量的每個對象具有幾個屬性的集合。

如果它是一個簡單的對象,並且集合的大小相對較小,那麼我會認爲使用內置的序列化類可以正常工作。

使用內置類對複雜對象進行序列化可能會很慢,因爲反射用於找出對象中的內容。如果性能是一個問題,那麼這裏有更快的序列化器(檢查Code Project),或者你可以編寫自己的專門知道你想要序列化的對象,並且因此沒有反射開銷

相關問題