I encountered a, at least to my expectations, strange behavior in the binary serialization of .NET.
All items of a Dictionary that are loaded are added
I can reproduce the problem. Had a look around Google and found this: http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=94265 although I'm not sure it's the exact same problem, it seems pretty similar.
EDIT:
I think that adding this code may have fixed the problem?
public void OnDeserialization(object sender)
{
this.Dictionary.OnDeserialization(sender);
}
No time to exhaustively test, and I want to beat Marc to the answer ;-)