2014-09-09 22 views

risposta

8

DataContractSerializer

  • è pensato per essere utilizzato per la serializzazione/deserializzazione di classe in WCF il servizio da e per entrambi JSON o XML.
  • serializza proprietà e campi.
  • È più veloce di XmlSerializer
  • Non controlla come viene generato xml. non dovrebbe essere usato quando è richiesto pieno controllo sulla struttura XML generato

XMLSerializer

  • XmlSerializer è solo per la serializzazione XML
  • appoggia il pieno controllo della struttura XML
  • serializza solo proprietà pubbliche
8
  1. DataContractSerializer offre prestazioni migliori rispetto a Xmlserializer. Questo perché DataContratSerializer mostra in modo esplicito quali campi o proprietà sono serializzati in XML.

  2. DataContractSerializer è in grado di serializzare i tipi che implementano Idictionary mentre il serializzatore XML no.

  3. DataContractSerializer serializza tutti i membri contrassegnati con l'attributo [DataMember] anche se il membro è contrassegnato come privato. Il serializzatore XML serializza solo membri pubblici.

Queste sono alcune importanti differenze.

Problemi correlati