[英]NetMsmqBinding WAS service fails to read messages from remote MSMQ queue in a workgroup
We have a service that is hosted in IIS using WAS with the net.msmq binding. 我们有一个使用net.msmq绑定的WAS托管在IIS中的服务。 The service reads messages from a private transactional MSMQ queue. 该服务从私有事务MSMQ队列中读取消息。 I need it to work by reading from a queue that is on a different machine to the service. 我需要它通过从与服务不同的机器上的队列读取来工作。 I can get it working if the queue is on the same machine, but not if it is on a different machine. 如果队列在同一台计算机上,则可以正常工作,但如果队列在另一台计算机上,则无法运行。
Cannot detect if the queue is transactional". The FormatName of the queue in the error is DIRECT=OS:the-host-computer-name\\private$\\EmailAsyncService 无法检测队列是否是事务性的。”错误中队列的FormatName是DIRECT = OS:-主机计算机名称\\ private $ \\ EmailAsyncService
An error occurred when converting the 'the-host-computer-name\\private$\\EmailAsyncService' > queue path name to the format name: Unrecognized error -1072824300 (0xc00e0014). 将“主机名称\\ private $ \\ EmailAsyncService”>队列路径名转换为格式名称时发生错误:无法识别的错误-1072824300(0xc00e0014)。 All operations on the queued channel failed. 排队的通道上的所有操作均失败。 Ensure that the queue address is valid. 确保队列地址有效。 MSMQ must be installed with Active Directory integration enabled and access to it is available. 必须在启用了Active Directory集成的情况下安装MSMQ,并且可以对其进行访问。
I'm a little late here, but since you have no other answers, I may still be of help. 我在这里有点晚了,但是由于您没有其他答案,因此我可能仍然会有所帮助。
You might want to try enabling Directory Service Integration, as I believe you need to muck with certificates to operate in Workgroup Mode. 您可能要尝试启用目录服务集成,因为我认为您需要考虑使用证书才能在工作组模式下运行。
Also, Juval Lowy's WCF book makes it clear that when you have queued services hosted in WAS you have to name the queue the exact same as the virtual path to your svc file. 同样,Juval Lowy的WCF书籍清楚地表明,当您对WAS中托管的服务进行排队时,必须将队列命名为与svc文件的虚拟路径完全相同的名称。 So if your service is actually hosted at /EmailAsyncService/EmailService.svc then that's precisely what you need to name your queue (without the first slash). 因此,如果您的服务实际上托管在/EmailAsyncService/EmailService.svc上,那么这正是您需要为队列命名的名称(不带第一个斜杠)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.