When serializing, I would like to serialize an object only once, then any references to that object should be serialized as a reference to the object. This is because, when
If you're using .NET 3 or later, you should use the DataContractSerializer and set PreserveObjectReferences to true.
DataContractSerializer
PreserveObjectReferences
true