我正在使用客户端服务器应用程序,其中客户端在请求队列中向服务器发送请求,服务器从队列中接收该请求对象并在客户端应用程序接收的响应队列中发送响应。我想在wcf服务和客户端中使用相同的功能,因此我是否需要为msmq创建两个不同的端点,如果是,则相同的客户端将如何使用两个端点。
答案 0 :(得分:2)
您不应将其视为严格意义上的客户端服务器应用程序。 您确实有一个称为客户端的请求发起者和一个称为服务器的请求处理器, 但是当认为WCF客户端是发送消息的人时,服务器就是接收者。这意味着在WCf术语中,起初您的客户端实际上是一个经典的“客户端”,服务器实际上是一个经典的“服务器”。但是当你处理完原始请求并需要发回原来的请求之后,角色就会被颠倒!服务器成为WCf客户端,客户端成为WCf服务器。
这意味着您的流程需要为彼此公开单独的端点。服务器在某个EP上侦听传入的消息(请求),并且客户端在某个EP上侦听传入的消息(响应)。
希望这能澄清一些事情。