如何在NServiceBus中更改MSMQ响应队列名称格式?

时间:2011-01-27 10:03:17

标签: msmq nservicebus

我试图通过VPN连接从家里的客户端访问工作服务器上的NServiceBus服务。消息到达服务OK但响应队列名称具有格式

DIRECT = OS:MyHomePCName \私人$ \ MyClientQueueName

回复消息位于服务器的传出队列中,大概是因为它无法解析MyHomePCName。我可以在将消息发送到以下格式时更改响应队列名称吗?

DIRECT = TCP:MyHomeIPAddress \私人$ \ MyClientQueueName

当然我仍然有为VPN连接发送IP地址的问题,但我现在只是在测试,并且不介意在客户端进行硬编码。

1 个答案:

答案 0 :(得分:1)

如果你输入“$ queueName @ $ homeIpAddress”,NSB应该正确格式化它。以下是它使用的代码:

public static string GetFullPath(string value){

IPAddress ipAddress;
if (IPAddress.TryParse(GetMachineNameFromLogicalName(value), out ipAddress))
{
    return (PREFIX_TCP + GetFullPathWithoutPrefix(value));
}
return (PREFIX + GetFullPathWithoutPrefix(value));

}