I know that on deserialization the DataContractSerializer does not call the constructor. Does it also bypass a public or private property's setter method?
Just tried it out -- The property accessors are not bypassed regardless of visibility (public, private, etc).