首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更改MsmqIntegrationBinding的消息编码

更改MsmqIntegrationBinding的消息编码
EN

Stack Overflow用户
提问于 2012-03-26 12:04:14
回答 1查看 1.2K关注 0票数 2

我试图使用带有MsmqIntegrationbinding的WCF在MSMQ上发布一条消息。发送可以工作,但当我查看发送到队列的消息时。编码不正确。

是否可以将消息编码更改为UTF-16?我已经尝试过使用自定义绑定来解决这个问题。这解决不了我的问题。我粘贴了下面使用的自定义绑定。

代码语言:javascript
复制
<binding name="CustomMsmqIntegrationBinding">   
   <textMessageEncoding messageVersion="None" writeEncoding="utf-16" />
   <msmqIntegration exactlyOnce="true">
      <msmqTransportSecurity msmqAuthenticationMode="None" msmqProtectionLevel="None" />
   </msmqIntegration>
</binding>
EN

回答 1

Stack Overflow用户

发布于 2012-03-26 16:17:50

问题是,你有什么理由强迫你使用UTF-16吗?

您在MSDN论坛:“如何将UTF-16作为WCF数据服务的默认编码。”中看到过这个链接吗?

作为一种可能的解决办法,它建议:

客户端可以在请求中发送Accept-Charset: UTF-16头,服务器将使用utf-16进行响应。

被接受的职位说:

..。UTF-8支持与UTF-16完全相同的一组字符.因此,除非您有一个只能使用UTF-16而不能使用UTF-8的客户端,否则就没有理由使用UTF-16而不是UTF-8。事实上,UTF-16有效载荷几乎是UTF-8的2倍。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9871739

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档