我刚刚开始 WCF。我有一个关于序列化的问题。我知道 WCF 默认在幕后使用 DataContract 序列化。我在 Aaron Skonnard 的文章http://msdn.microsoft.com/en-us/magazine/cc163569.aspx中查看了一些在线代码。下面的代码来自他的文章。在此,他编写了序列化 Person 对象的代码。我的问题是 WCF 不会在幕后执行此操作。为什么一定要写序列化逻辑?然后再次反序列化它。作为 WCF 初学者,我对何时编写此代码以及何时不编写感到困惑。我认为如果没有编写序列化逻辑,这将正常工作。帮助表示赞赏!
static void WriterPersonSerializable()
{
Person p = new Person("Bob", 34, "secret");
p.spouse = new Person("Jane", 33, "secret");
using (FileStream fs = new FileStream("person.xml", FileMode.Create))
using (XmlDictionaryWriter writer =
XmlDictionaryWriter.CreateTextWriter(fs))
{
DataContractSerializer serializer =
new DataContractSerializer(typeof(Person));
serializer.WriteObject(writer, p);
}