在工作组模式下配置WCF MSMQ [英] Config for WCF MSMQ in workgroup mode

查看:90
本文介绍了在工作组模式下配置WCF MSMQ的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在尝试部署服务时,我发现它无法启动,因为MSMQ处于工作组模式.我创建了一个私有队列,并更改了配置文件以引用它,但是WCF服务主机拒绝以该消息开头:

绑定验证失败,因为绑定的MsmqAuthenticationMode属性设置为WindowsDomain,但是在禁用Active Directory集成的情况下安装了MSMQ.

谁能告诉我如何在配置文件中指定工作组模式?我在MSDN中找到的信息都是关于修改代码中的设置的,而没有提及如何在配置文件中指定此设置.

在我拥有的配置文件中,绑定标记为空(<bindings />),但是服务端点指定了binding="netMsmqBinding",我想这意味着正在使用默认配置.

解决方案

您应该在队列上设置匿名集成身份验证. 请查看此kb,了解其原因和方式. /p>

msdn中,有一个很好的例子工作组模式.请注意,该示例使用事务性队列.因此,您将必须使队列具有事务性.只有在创建队列时才能做到这一点.

发布您的代码和配置,以便我们对其进行注释.

In trying to deploy a service I have found that it won't start because MSMQ is in workgroup mode. I have created a private queue instead and changed the config files to refer to it, but the WCF service host refuses to start with this message:

Binding validation failed because the binding's MsmqAuthenticationMode property is set to WindowsDomain but MSMQ is installed with Active Directory integration disabled.

Can anyone tell me how to specify workgroup mode in the config file? The information I find in MSDN is all about modifying the setting in code, and makes no mention of how to specify this in the config file.

In the config file that I have, the bindings tag is empty (<bindings />) yet the service endpoint specifies binding="netMsmqBinding" which I imagine means a default configuration is in use.

解决方案

You should set anonymous integration authentication on the queue. Look at this kb on why and how.

In the msdn there is a good example of working with workgroup mode. Note that the example use transactional queue. So you will have to make your queue transactional. This can be done only when creating the queue.

Post your code and config so we can comment on them.

这篇关于在工作组模式下配置WCF MSMQ的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆