MSMQ复杂对象序列化/反序列化

时间:2011-08-05 15:33:12

标签: c# msmq

我正在尝试使用XmlFormatter向包含object类型属性的对象发送消息给MSMQ。如果object属性为null,则序列化/反序列化可以完美地工作。但是,如果我分配一个对象,则在调用.send时会收到异常。生成XML文档时出错是我收到的唯一信息。这两个类都标记为可序列化。还有其他我需要做的事吗?

感谢。

2 个答案:

答案 0 :(得分:0)

我怀疑你的对象没有正确地序列化为XML。

例如,如果只是将字符串值赋给对象属性,它是如何工作的?

您可以使用小型控制台应用程序或调试器来测试如何将类序列化和反序列化到xml中,并检查XmlFormatter的行为。

答案 1 :(得分:0)

即使您的复杂类将属性声明为类型对象,但在为其指定了某些内容时,序列化会将该属性视为已分配类型的对象。

例如,如果为对象属性赋值newClassClass(),则序列化将指向object(),但是找到CustomClass(),因此序列化将失败。 (不期望键入CustomClasss)

如果为对象属性赋值new object(),我怀疑序列化将起作用。

相关问题