Silverlight中的DataContractSerializer和构造函数

Silverlight中的DataContractSerializer和构造函数,silverlight,datacontext,Silverlight,Datacontext,可能重复: 如果我使用DataContract属性,它不会调用构造函数,但如果我跳过它,它会调用。为什么会发生这种情况?序列化/反序列化的目的是以原始状态重新创建对象。对象已经被构造,所以我们不需要调用构造函数。这就像从死人中复活一样,而不是生下一个孩子 如果在反序列化对象时需要一些代码,只需用属性修饰一个方法并调用需要从那里执行的代码即可

可能重复:


如果我使用DataContract属性,它不会调用构造函数,但如果我跳过它,它会调用。为什么会发生这种情况?

序列化/反序列化的目的是以原始状态重新创建对象。对象已经被构造,所以我们不需要调用构造函数。这就像从死人中复活一样,而不是生下一个孩子

如果在反序列化对象时需要一些代码,只需用属性修饰一个方法并调用需要从那里执行的代码即可