我有返回接口的方法和接受接口作为参数的一些方法。我正在尝试使用Net DataContractSerializer,但我收到以下错误......
格式化程序抛出异常 试图反序列化消息: 尝试时出错 反序列化参数 http://tempuri.org/:id。该 InnerException消息是'错误 第1行位置120. XML'Element' 'http://tempuri.org/:id'没有 包含预期属性 'http://schemas.microsoft.com/2003/10/Serialization/:Type'。 解串器不知道 要反序列化的类型。检查一下 被序列化的类型具有相同的类型 合同作为类型 反序列化。“。请参阅 InnerException以获取更多详细信息。
请帮我解决此错误....
如果我在Operation Contract上使用Netdatacontract属性,我可以在序列化类上使用DataContract和Datamember属性???
提前致谢...
答案 0 :(得分:0)
猜测 - 错误似乎表明NetDataContractSerializer无法正确确定将内容反序列化的类型。
是不是你没有为反序列化器指定http://tempuri.org
XML命名空间?
另外,您能否显示InnerException
的内容?
或第二个选项:使用NetDataContractSerializer,您还需要共享服务器和客户端之间的数据协定,以便客户端可以反序列化为与服务器端定义的完全相同的类型。你是否错过了这个要求,也许??