我的soapwebservice 和我為其編寫的新C# 客戶端有問題。服務器端采用現代標準 .NET Framework,而客戶端僅具有 .NET 3.5。每當我嘗試從網絡應用程序返回字符串時,我都會收到錯誤:“無法反序列化操作“MyMethod”的響應消息正文?!?但有一個例外:“XML 文檔中出現錯誤 (1.40286)?!?翻譯:服務器響應的序列化錯誤,并帶有 XML 文檔錯誤?,F在讓我更困惑的是:每當我不返回文本而是在 Webmethod 中拋出異常(例如: throw new ArgumentException )時,我都不會收到序列化錯誤。當 java 客戶端使用此 Web 服務時......我從該客戶端完全沒有收到任何錯誤??蛻舳舜a:public void MyMethod (bool _IsInDebugMode, MyWebMethodRef.MyProxySoapClient myclient){ BasicHttpSecurityMode secMode = (_IsInDebugMode) ? BasicHttpSecurityMode.None : BasicHttpSecurityMode.Transport; BasicHttpBinding wsBinding = new BasicHttpBinding(secMode); wsBinding.MaxReceivedMessageSize = 2147483647; wsBinding.OpenTimeout = new TimeSpan(0, 0, 1); wsBinding.CloseTimeout = new TimeSpan(0, 0, 1); wsBinding.SendTimeout = new TimeSpan(0, 0, 30); wsBinding.ReceiveTimeout = new TimeSpan(0, 0, 30); string ret = myclient.myMethod(Convert.ToBase64String("Test"));} 服務器代碼:public class MyProxy : System.Web.Services.WebService{ public MyProxyHeader header; [WebMethod] [SoapHeader("header")] public string myMethod(string mytext) { return Convert.ToBase64String("blahblubb"); }}現在我有點困惑,我的問題是:什么可能導致這個反序列化錯誤以及如何消除它?
1 回答

慕村225694
TA貢獻1880條經驗 獲得超4個贊
本質上:當我將客戶端 .NET Framework 更新到 4.6 后,它就開始工作了??雌饋碜钚碌?.NET Framework 構建 xml 字符串的方式與 3.5 .NET Framework 不同,這意味著它們不太向下兼容!
- 1 回答
- 0 關注
- 208 瀏覽
添加回答
舉報
0/150
提交
取消