I’ve been doing some reading up on XML serialization, and from what I understand, It is a way to take an object and persist the state in a file. As for the implementation, it looks straight forward enough, and there seems to be a load of resources for applying it. When should XML serialization be used? What are the benefits? What are situations that are best helped by using this?
I’ve been doing some reading up on XML serialization, and from what I understand,
Share
You’ve answered a little bit of the question in your post. It’s great for persisting the state of an object. I’ve used it in applications for saving user settings. It’s also a great way to send data to other systems, since it is standardized. An important thing to remember is that it is easily human readable. This can either be a good or bad thing depending on your situation. You might want to consider encrypting it, or using encrypted binary serialization if you don’t want someone else to be able to understand it.
EDIT:
Another gotchya worth mentioning is that the .NET implemented
XMLSerializeronly serializes public members in a object. If you need to persist private or protected members, you will either need to use a customized serializer or use another form of serialization.