【发布时间】:2011-04-16 22:22:36
【问题描述】:
我正在使用从 wsdl 到 c# 的自动转换,除了编码之外,任何时候都可以正常工作 我有本地字符(如 'ł' 或 'ó')我得到 '??'在字符串字段中插入它们('G????wny' 而不是 'Główny')。如何处理?服务器发送具有正确编码的文档,带有标题。
编辑:我在 Wireshark 中注意到,从我发送的数据包有 BOM,但发送给我的数据包没有 - 也许这是问题的根源?
【问题讨论】:
-
请详细说明“从 wsdl 到 c# 的自动转换”的含义。您是否使用了“添加服务参考”?
-
是的,完全正确。我只给了 wsdl 文档的 url 地址。
-
一般来说,这应该可以。您需要提供更多详细信息。这是你写的服务吗?你能提供有关服务的详细信息吗?您如何调用服务?
-
这个服务我没写过,我是通过SoapHttpClientProtocol派生的对象调用的(c#ide生成),我只给它提供cookies容器,然后调用方法,就这样。我查看了数据包上的wireshark,它们被正确编码为utf-8,所以问题在于生成的代码。
-
问题不大可能出在生成的代码中。它实际上并没有做很多。此外,.NET 中的字符串是 Unicode,因此不会丢失特殊字符。
标签: c# soap unicode utf-8 wsdl