2010-09-28 16 views
3

J'utilise DeHL pour sérialiser XML et class dans Delphi et si ajouter une propriété à ma classe et essayer de désérialiser mon fichier XML. J'ai cette erreur: "Deserializing" \ TApp \ FObject \ test "a échoué. Serializer a signalé qu'il manquait ou qu'une autre entité est actuellement lue! '.Delphi DeHL Désérialise le fichier XML dans une classe plus récente?

Je comprends très bien ce problème mais y a-t-il un moyen de mettre la valeur par défaut au lieu de l'erreur?

Répondre

3

Alex me répond ceci:

Vous devriez pouvoir - en annotant le champ « part2" avec [XmlNullable]. Ceci indiquera au sérialiseur XML à de définir le champ "part2" sur NIL si n'a pas de nœud XML. Notez que, bien que cela soit possible, il est recommandé de ne pas utiliser le . Contenu désérialisé doit être sérialisé de nouveau aux types d'origine autrement "mauvaises choses" peut se produire.

Je pose cette question il y a longtemps sur son site, mais je ne pouvais trouver où je pose cette question: http://alex.ciobanu.org/?p=285#comments