I am experiencing a baffling problem regarding object serialization. My project consists of two executables, a data editor and the main program, both of which use a common set of DLL object libraries. The editor is used to create and manipulate
a set of custom objects, which it then serializes to a data file. The main program loads this data file on startup.
The objects are stored in an ObservableCollection, and the serialization routine simply serializes this collection to a data file using a binary formatter. This routine is in the DLL, and the only data regarding serialization created in the EXEs is
the stream, which is passed as a parameter to the function in the DLL.
What I'm finding is that the data editor behaves as expected. If I make changes to the data with the editor, it is writen to the file and the changes will reflect correctly when I run the program again. However, the main program exhibits a strange
behavior where it "remembers" the orginal values of the data objects when they were first persisted. For instance, if I go into the editor and edit the name of one of the objects, the main program will still pull up the original name of the object when
it deserializes the objects. However, the change will persist in the data editor. If I add new objects to the collection via the editor, t
View Complete Post