【发布时间】:2013-03-28 14:33:21
【问题描述】:
我有一个如下的数据合同:
[DataContract]
class Person
{
private string m_name;
[DataMember]
public string Name
{ get {return m_name;}
set {m_name = value;}
}
}
当 xml 序列化器序列化这个对象时,它正在生成带有私有成员的 xml,例如
<person><m_name>john</m_name></person>
如何强制序列化程序仅序列化公共属性。
提前致谢。
【问题讨论】:
-
DataContrac 使用 DataContractSerializer,而不是 XmlSerializer,除非您另有说明。有区别。
-
由于
XmlSerializer和DataContractSerializer都给出了预期的答案,您是否真的可以用[DataMember]属性而不是Name来装饰m_name?由于 Name 没有出现在您发布的 XML 中,但 m_name 出现了.... -
请贴出你用来序列化类对象的代码。