我正在使用 WCF 4.0,该服务托管在 IIS (WAS) 中,并带有 net.msmq 地址。我开始只是通过一个方法发送一个 int 。在我的 web.config 中,我有以下内容。注意-由于其他限制,我无法连接到 AD。即使没有 AD,一个人仍然应该能够使用本地帐户来确保安全。
<binding name="Q" useActiveDirectory="false" useMsmqTracing="true">
<security mode="None">
<transport msmqAuthenticationMode="WindowsDomain"
msmqProtectionLevel="None" />
</security>
</binding>
我记录了 Msmq End2End 事件,它显示 eventID 1 和 5 已记录,但EventID 2 ("Message Received") 没有事件。
如果我取消选中队列属性中的“已验证”,则会记录该事件 - 但这是不可取的,因为那时没有安全性:) 所以这就是我向你们发布消息的原因。
设置了一个本地专用队列,并启用了日记功能。这些都没有消息 - 我也确保 f5 以获得新的结果。我将安全设置为具有完全控制权的 iis 应用程序池用户,并提供网络服务读取/查看权限。我也暂时尝试过让每个人都完全控制,但这也无济于事。我也尝试了一个非事务队列,但这也没有帮助。
该消息没有显示在日志中,也没有记录错误,但也许我没有找到正确的位置。对此的任何指示也会有所帮助。