我有一堆不同的DTO类。它们在某个时刻被序列化为XML字符串,然后发送到Web应用程序的客户端。现在,当客户端回传一个XML字符串时,我需要将其反序列化回代表它的DTO类实例。问题是我想让它通用,并且可能是一个函数,该函数接收一个XML字符串并输出一个类型的对象。大致上像这样:
public sometype? Deserialize (string xml)
{
//some code here
return objectFromXml;
}
编辑:糟糕的例子!我刚刚自相矛盾了!
我无法执行以下操作:
Person person = Deserialize(personXmlStringFromClient);
因为我不知道personXmlStringFromClient是Person DTO对象实例的表示。
我不知道给我的序列化对象是什么,这似乎是我的问题所在。我一直在阅读关于反射和其他技术的内容,这些技术涉及将类型插入到xml中,以便反序列化器知道如何处理它。我无法将所有这些内容整合成一个可工作的部分。而且,在几乎大多数示例中,作者都知道反序列化后会有什么类型。欢迎任何建议!如果我需要对序列化过程进行特殊处理,请也分享一下。