2013-09-27 77 views
0

DataContractSerializerDataContractJsonSerializer有什麼區別? 課程,使用和速度有什麼不同?Difference bettwen DataContractSerializer和DataContractJsonSerializer

在此先感謝。

+0

-1:在提問之前,您確實試圖閱讀MSDN描述。即當操作明顯不同時,速度很少受到關注... –

+0

當然MSDN幫助很多,不幸的是在這一個上,除了說一個是用於JSON而另一個是用於XML沒有更多關於它的說法......非常差的文檔。 @AlexeiLevenkov –

+0

那麼這個問題是現在谷歌的熱門話題,所以我很高興它得到了答案。 – NotAGenie

回答

6

直從MSDN

DataContractSerializer的---序列化和使用所提供的數據契約反序列化一類型的實例爲XML流或文檔。這個類不能被繼承。

DataContractJsonSerializer ---將對象序列化到JavaScript Object Notation (JSON)並將JSON數據反序列化爲對象。這個類不能被繼承。

的速度,我認爲JSON可能會更快

3

除了明顯的序列化格式的差異,也有限制,以什麼相應的串行器能夠處理。

特別地,DataContractSerializer是能夠由DataContractAttribute構造的IsReference屬性設置爲true處理circular references。由於在JSON (according to the WriteObject error message)中沒有標準化的引用表示,因此DataContractJsonSerializer無法處理這種情況。

相關問題