C# 使用私有成员c序列化到本地和SOAP#

C# 使用私有成员c序列化到本地和SOAP#,c#,xml-serialization,private-members,C#,Xml Serialization,Private Members,有人能给我指一下正确的方向吗?我正在尝试序列化一些双重用途的类:1)以XML格式本地保存数据,2)使用SOAP将这些类发送到web服务 类中有一些(私有)成员,我想在本地保存它们,但我不希望它们通过连接保存。有没有一种方法可以做到这一点,而不必拥有同一类的两个近似副本(一个有私人成员,另一个没有) 编辑:这篇文章的重点不是要确定哪种是序列化私有成员的最佳方式,而是要找出一种在本地序列化数据的方法,这样我就可以在本地框中用XML保存所有类信息,但仍然能够序列化这些成员的已定义子集,这样我就可以通过

有人能给我指一下正确的方向吗?我正在尝试序列化一些双重用途的类:1)以XML格式本地保存数据,2)使用SOAP将这些类发送到web服务

类中有一些(私有)成员,我想在本地保存它们,但我不希望它们通过连接保存。有没有一种方法可以做到这一点,而不必拥有同一类的两个近似副本(一个有私人成员,另一个没有)

编辑:这篇文章的重点不是要确定哪种是序列化私有成员的最佳方式,而是要找出一种在本地序列化数据的方法,这样我就可以在本地框中用XML保存所有类信息,但仍然能够序列化这些成员的已定义子集,这样我就可以通过SOAP将它们传递给web服务

希望这有意义

我建议使用,这正是WCF用于SOAP的目的,通过DataContract,您可以将私有成员修饰为参与序列化

这里有一个关于DataContract用法的好链接

XML序列化从不序列化私有成员,因此更好的问题是如何让私有成员序列化。假设这些成员是公共的。或者我可以使用另一个序列化方法来序列化私有成员。@John-具体地说,
XmlSerializer
不会。您可能会争辩说,
DataContractSerializer
可用于(非常有限的)“XML序列化”,但对私有成员有效。@Marc:picky,picky!是的,我的意思是
XmlSerializer
没有。是的,我已经读过这方面的内容,这可能就是我要实现的,但是我认为你没有领会我文章的要点。这不是要确定哪种方法是序列化私有成员的最佳方法,而是要找出一种在本地序列化数据的方法,这样我就可以在本地框中以XML格式保存所有类信息,但仍然能够序列化这些成员的子集,这样我就可以通过SOAP将它们传递给web服务。您可以考虑为本地XML生成使用XAMLSerialAlgisher(Note XAML非XML),然后使用子集生成的DATACONTractSerialZER。