郁闷的Xml Serialization BUG

上个星期我在一个客户端程序(一个实时处理程序,要调用一些底层的硬件,为了方便调试,我写了一个模拟底层硬件的库)里调用WebService的一个方法的时候,发现我要调用的某个方法,在IE的调试界面下,运行正确,在我使用模拟方式运行程序的时候,调用也很OK,就是当使用真实的底层硬件的时候,老是报XmlException错误。
但是,奇怪的是,我真实硬件环境下调用这个ASMX的其它方法,确总是正确。
我一开始,以为是我的模拟器有什么问题,当后来我觉得是.NET本身的问题。
于是我开始在Newgroups,在Google里查找相关的信息。尤其在Google里查找ScanHexEntity看到了和我类似的情况。从中可以看出,这是一个.NET XML Serialization Bug,然后在用Web引用时,VS.NET自动生成的Proxy里(就是SoapHttpClientProtocol)用到了XML Serialization,调用Web Service就出错了,有人也遇到了和我类似的事情。于是这个BUG就发生在我的身上了
虽然现在我解决了在真实硬件环境下调用这个WebService的方法(后面讲我的无奈的怪招),但我还是有个地方很想不通:
出问题的这个方法没有什么特别的,就是简单的public string Auth(string clientcode),和其他正常的方法没有什么特殊的。难道是clientcode由底层硬件返回的时候,这个字符串的编码有问题?

我解决这个郁闷问题的方法是,在.NET Windows Client里使用SOAP Toolkit3来调用那个讨厌的出错方法。是不是很无奈呀!
posted @   朱永光  阅读(799)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
点击右上角即可分享
微信分享提示