我正在嘗試使用XmlFormatter爲包含對象類型屬性的對象發送消息給MSMQ。如果對象屬性爲空,則序列化/反序列化完美無缺。但是,如果我分配一個對象,則在調用.send時會收到異常。生成XML文檔時發生錯誤是我收到的唯一信息。這兩個類都標記爲可序列化。還有什麼我需要做的嗎?MSMQ複雜對象序列化/反序列化
謝謝。
我正在嘗試使用XmlFormatter爲包含對象類型屬性的對象發送消息給MSMQ。如果對象屬性爲空,則序列化/反序列化完美無缺。但是,如果我分配一個對象,則在調用.send時會收到異常。生成XML文檔時發生錯誤是我收到的唯一信息。這兩個類都標記爲可序列化。還有什麼我需要做的嗎?MSMQ複雜對象序列化/反序列化
謝謝。
我懷疑你的對象沒有正確地序列化成XML。
它是如何工作的,例如,如果你只是將一個字符串值賦給對象屬性?
您可以使用小型控制檯應用程序或調試器來測試您的類是如何序列化和從xml反序列化並檢查XmlFormatter的行爲。
即使您的複雜類將一個屬性聲明爲類型對象,但在將某個屬性分配給它時,序列化將該屬性視爲指定類型的對象。例如,如果您將對象屬性賦值爲新的CustomClass(),則序列化將期望對象(),但找到一個CustomClass(),因此序列化將失敗。 (類型CustomClasss不是預期的)
如果您爲對象屬性賦予新對象()的值,那麼我懷疑序列化會起作用。
什麼是例外? –