views:

551

answers:

3

Is there a way to hook into how specific types are serialized when using WCF and Silverlight. For example, I need to tweak how System.DateTime properties are serialized/deserialized.

A: 

In your datacontract, use the [OnSerialized] attribute.

Steve
Unfortunately, Silverlight doesn't support serialization callbacks. See my complaint <a href="http://blog.wouldbetheologian.com/2009/10/really-missing-serialization-callbacks.html">here</a>.
Ken Smith
+1  A: 

Be careful here. Any time you change how something is serialized, you'll also have to change how the client deserializes it. You should have a very good reason in mind before changing how a data contract serializes, as they are made to be very interoperable. Anything you change could reduce the level of interoperability.

John Saunders
A: 

Since Silverlight doesn't support serialization callbacks (see here), you best bet might be to add a secondary property to any objects which wraps the DateTime property you need to control, and handle any "serialization" needs in that property.

Just a thought.

Ken Smith