2009-02-26 6 views
2

J'ai le même problème que dans ce post:Problèmes de désérialisation binaire - quelqu'un peut-il aider?

http://social.microsoft.com/Forums/en-US/netfxbcl/thread/10027dd8-da47-4691-91a6-a8b89a7f514a

Quelqu'un sait une réponse possible/solution? Chose amusante est que j'ai 2 collections dans ma classe sérialisable (sérialisation binaire). L'un est la liste, l'autre est le dictionnaire. La collection List est OK, Dictionary renvoie 0 en tant que propriété Count sur la méthode [Désérialisé]. Ce qui est encore plus bizarre, c'est qu'après la désérialisation, travailler avec l'objet de classe est OK. Tous les tests unitaires contre la collection Dictionary passent. Cela me frustrait infiniment parce que je veux travailler avec l'objet Dictionary juste après la désérialisation, mais je ne peux pas en raison de cette étrange erreur. Quelqu'un peut-il aider?

+0

Pouvez-vous poster du code? Il est possible que tu manques quelque chose que mille paires d'yeux pourraient être capables de repérer. –

Répondre

5

Oui; voir here; vous avez juste besoin de demander au dictionnaire de terminer la désérialisation:

public void OnDeserialization(object sender) 
{ 
     this.Dictionary.OnDeserialization(sender); 
} 
+0

Vous n'avez aucune idée du temps que j'ai passé là-dessus. Merci beaucoup pour cela. Je peux enfin me reposer et passer au codage des fonctionnalités intéressantes. – Echiban

+0

Ceci, mille fois ça! Je voulais juste ajouter aussi que cela fonctionne aussi bien sur les méthodes attribuées avec la méthode [OnDeserialized] que de transmettre le StreamingContext en tant qu'expéditeur. – Yoopergeek

Questions connexes