我遇到了SOAP序列化的問題,找到答案會很好。這裏是一個非常簡化的例子:複雜類型的SOAP序列化時發生InvalidOperationException異常
public void Test()
{
StringBuilder sb = new StringBuilder();
StringWriter writer = new StringWriter(sb);
SoapReflectionImporter importer = new SoapReflectionImporter();
XmlTypeMapping map = importer.ImportTypeMapping(typeof(A));
XmlSerializer serializer = new XmlSerializer(map);
serializer.Serialize(writer, new A());
}
[Serializable]
public class A
{
public A()
{
BB = new B();
}
public int a;
public B BB;
}
[Serializable]
public class B
{
public int A1 { get; set; }
public int A2 { get; set; }
}
如果我跑法測試(),然後我得到以下異常:System.InvalidOperationException: Token StartElement in state Epilog would result in an invalid XML document.
希望得到任何幫助。
謝謝,這有助於。但是我還有另外一個問題,這次是去分解。 如果我重寫類A中的方法GetHashCode()並嘗試訪問屬性BB,則在反序列化期間會出現NullReferenceException。不知何故屬性BB等於0,但它不應該。 – 2009-06-18 09:58:01
你可以發佈你的反序列化代碼嗎?我會看看 – 2009-06-18 12:09:55