2009-02-26 9 views
2

Ich habe das gleiche Problem wie in diesem Beitrag:Probleme mit binärer Deserialisierung - kann mir jemand helfen?

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

Wer weiß, eine mögliche Antwort/Lösung? Lustige Sache ist, dass ich 2 Sammlungen in meiner serialisierbaren Klasse (binäre Serialisierung) habe. Einer ist List, einer ist Dictionary. Die List-Auflistung ist OK, Dictionary gibt 0 als Count-Eigenschaft für die Methode [Deserialized] zurück.

Noch bizarrer ist, dass nach der Deserialisierung das Arbeiten mit dem Klassenobjekt OK ist. Alle Unit Tests gegen die Dictionary Collection bestehen. Es frustriert mich zu keinem Ende, weil ich direkt nach der Deserialisierung mit dem Dictionary-Objekt arbeiten möchte, aber aufgrund dieses seltsamen Fehlers kann ich nicht. Kann jemand helfen?

+0

Können Sie etwas Code posten? Es ist möglich, dass du etwas verpasst, das tausend Augenpaare entdecken können. –

Antwort

5

Ja; siehe here; Sie müssen nur das Wörterbuch bitten, die Deserialisierung zu beenden:

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

Sie haben keine Ahnung, wie viel Zeit ich damit verbracht habe. Vielen Dank dafür. Ich kann mich endlich ausruhen und mit den coolen Funktionen fortfahren. – Echiban

+0

Dies, tausend mal das! Ich wollte nur hinzufügen, dass dies auch für Methoden funktioniert, die der [OnDeserialized] -Methode zugeordnet sind, geben Sie einfach den StreamingContext als Absender ein. – Yoopergeek

Verwandte Themen