在本篇文章中,我们将通过一个具体的实例来演示如何通过路由服务。在这个例子中,我们会创建连个简单的服务HelloServie和GoodbyeService。假设客户端不能直接调用这两个服务,需要使用到路由服务作为两者之间的中介。整个消息路由的场景如下图所示,中间的GreetingService.svc就是代表路由服务,而两个目标服务则通过HelloServie.svc和GoodbyeService.svc表示。路由服务使用的消息筛选器EndpointAddressMessageFilter,即根据包含在消息中的目标地址来决定应该将请求消息转发给HelloServie.svc还是GoodbyeService.svc。[源代码从这里下载]

[WCF 4.0新特性] 路由服务[实例篇]

首先我们创建一个空的解决方案,并如下图所示添加三个项目并添加相应的引用。其中类库项目Service.Interface和Service分别用于定义服务契约和服务类型,而控制台项目Client用作为进行服务调用的客户端。

[WCF 4.0新特性] 路由服务[实例篇]

步骤二、定义服务

在Service.Interface项目中为两个服务创建服务契约接口:IHello和IGoodbye,两个接口定义如下。

using System.ServiceModel;
namespace Artech.RoutingServiceDemo.Service.Interface
   3: {
)]
interface IHello
   6:     {
   7:         [OperationContract]
string userName);
   9:     }
)]
interface IGoodbye
  12:     {
  13:         [OperationContract]
string userName);
  15:     }
  16: }

相关文章:

  • 2021-11-07
  • 2022-12-23
  • 2022-12-23
  • 2021-07-15
  • 2021-08-07
  • 2021-06-16
  • 2022-12-23
猜你喜欢
  • 2022-02-04
  • 2022-01-27
  • 2022-02-19
  • 2022-12-23
  • 2021-08-26
  • 2022-02-08
  • 2022-12-23
相关资源
相似解决方案