How can you determine at runtime whether an object is serializable? (Hint: Look at the Type class.)
You can call the IsSerializable function provided by the Type class.
If you don't want to apply the NonSerializable attribute to several data members, how would you ensure that those values will not be serialized?
Use custom serialization instead of selective serialization.
Explain what happens when you serialize an object, add or remove a member variable to that object, and then attempt to deserialize it?
An exception will be thrown because the signature of that object has changed and cannot be deserialized properly.