What ways there are for doing a one way XML serialization in .Net? XmlSerializer won't write properties that don't have a public setter. While this limitation is understandable for deserialization I would be satisfied with just serialization for web use. The JSON.Net serialization works great in this situation as it serializes the full object graph not minding even if some properties have no setters defined.
The main goal for these classes is a normal .Net class library. These classes are consumed by other code in 90% of the cases so I am after a solution that doesn't sacrifice the normal usability of the classes.
The resulting class library should support .Net 2.0.