I\'ve seen quite a few posts on changes in .NET 3.5 SP1, but stumbled into one that I\'ve yet to see documentation for yesterday. I had code working just fine on my machine
In SP1 does the foo.Bar property get properly deserialized?
In pre SP1 you wouldn't be able to deserialize the object because the set method of the Bar property is private so the XmlSerializer doesn't have a way to set that value. I'm not sure how SP1 is pulling it off.
You could try adding this to your web.config/app.config
<system.xml.serialization>
<xmlSerializer tempFilesLocation="c:\\foo"/>
</system.xml.serialization>
That will put the class generated by the XmlSerializer into c:\foo so you can see what it is doing in SP1 vs RTM
I rather like this new (?) behavior because the XML document doesn't have any mention of Bar in it, so the deserializer should not even be attempting to set it.