Stavo passando per le basi WCF, Qualcuno può dire che in quali scenari dovremmo usare DataContractSerializer e XmlSerializer?Differenza tra DataContractSerializer vs XmlSerializer
9
A
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
DataContractSerializer offre prestazioni migliori rispetto a Xmlserializer. Questo perché DataContratSerializer mostra in modo esplicito quali campi o proprietà sono serializzati in XML.
DataContractSerializer è in grado di serializzare i tipi che implementano Idictionary mentre il serializzatore XML no.
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
- 1. Linq a Xml VS XmlSerializer VS DataContractSerializer
- 2. DataContractSerializer vs XmlSerializer: Pro e contro di ciascun serializzatore
- 3. DataContractSerializer vs BinaryFormatter performance
- 4. differenza tra session.evict vs chiaro
- 5. Differenza tra document.hidden vs document.hasFocus()
- 6. Differenza tra "get' VS 'getProperty'
- 7. Differenza tra NSWindowController Vs NSViewController
- 8. Differenza tra carico vs DOMContentLoaded
- 9. Differenza tra oracle.sql.BLOB.DURATION_CALL vs oracle.sql.BLOB.DURATION_SESSION
- 10. Differenza tra IIS 6.0 vs IIS 7.0
- 11. Differenza tra sé debole vs sé debole()
- 12. Differenza tra Locale FRANCESE vs FRANCE Locale
- 13. che differenza tra InternalResourceViewResolver vs UrlBasedViewResolver
- 14. SQL: Differenza tra "BETWEEN" vs "current_date - number"
- 15. Differenza tra randint casuale vs randrange
- 16. Differenza tra io.open vs open in python
- 17. Differenza tra javax.servlet-api.jar vs servlet-api.jar
- 18. differenza tra grep Vs cat e grep
- 19. Differenza tra Spring JDBC Vs Plain JDBC?
- 20. Che differenza tra Jersey vs JAX-RS
- 21. Differenza tra :: class vs :: className() in Yii2?
- 22. Differenza tra variabili linux $ BASH_SUBSHELL vs $ SHLVL
- 23. Qual è la differenza tra colorWithSRGBRed vs colorWithDeviceRed vs colorWithCalibratedRed
- 24. Differenza tra AlertDialog.builder's obj.create() vs obj.show() vs obj.create(). Show()
- 25. iPhone: Differenza tra nil vs Nil e vero vs TRUE
- 26. differenza tra i386: x64-32 vs i386 vs i386: x86_64
- 27. È consigliabile memorizzare le istanze di DataContractSerializer?
- 28. Perché XmlSerializer non supporta il dizionario?
- 29. DataContractSerializer - Come posso inviare l'xml a una stringa (a differenza di un file)
- 30. L'output di DataContractSerializer varia tra .NET e Mono