Explication détaillée de la sérialisation dans .net

PHPz
Libérer: 2017-04-03 11:59:16
original
1464 Les gens l'ont consulté

Sérialisation dans .net

Formats et méthodes de sérialisation courants

Dans .net, les formats de sérialisation courants incluent principalement json, binaire et xml, résumés dans le tableau suivant .

Explication détaillée de la sérialisation dans .net

Retour en haut

Notes

À propos des règles d'annotation des attributs d'entité :

1, tout en .net La marque [Sérialisable] doit être ajoutée à la classe de l'entité utilisée pour la sérialisation. Sinon, il n'y aura aucun problème lors de la sérialisation json, mais une erreur sera signalée lors de l'utilisation de BinaryFormatter pour la sérialisation binaire.

2. Si elles sont appliquées dans WCF, les balises [DataContract] doivent être ajoutées aux classes de toutes les entités et [DataMember] doivent être ajoutées aux champs.

3. Lors de l'utilisation de newtonsoft.json, si [DataContract] est ajouté à la classe d'entité, [DataMember] est ajouté à certains champs, et certains champs ne sont pas ajoutés, mais ceux qui ne sont pas ajoutés doivent également l'être. inclus lors de la sérialisation. Les champs [DataMember] peuvent être résolus en ajoutant [JsonObject(MemberSerialization.OptOut)] à la classe d'entité, ce qui signifie afficher tous les champs publics.

4. Lors de l'utilisation de newtonsoft.json, System.Web.UI.WebControls.ListItem ne peut pas être sérialisé. La solution consiste à personnaliser une classe et à la marquer [Sérialisable].

Retour en haut

Résumé

1. S'il s'agit du format json, NewtonSoft.Json est le plus polyvalent (peut gérer les références circulaires), bien qu'il ne soit pas le plus rapide. .

2. S'il est au format XML, utilisez le XmlSerializer fourni avec .net.

3. S'il s'agit d'un format binaire, utilisez le BinaryFormatter fourni avec .net Bien que Protobuf soit rapide, il est difficile d'ajouter le numéro de série.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!