【发布时间】:2009-09-17 08:14:08
【问题描述】:
我们使用 WCF 在客户端和服务器应用程序之间进行通信。客户端应用程序具有许多需要与服务器通信的功能 - 我们选择在多个类中实现这一点(职责分离)
目前,我们正在为每个对象创建新的 WCF 端点和服务合同 - 发票、会计、内容管理等。这会导致客户端和服务器上的大量端点配置(移动时可能会出现配置错误的问题)测试和生产平台)。
我想知道我是否可以定义一个可以提供多个服务联系实现的单个 WCF 端点。然后我们的配置文件将包含一个端点(到服务工厂),我可以通过指定我感兴趣的服务的接口来请求不同的服务。
例如
using (IServiceClientFactory serviceClientFactory = new RealProxyServiceClientFactory())
{
// This is normal WCF proxy object creation.
IServiceFactory serviceFactory = serviceClientFactory.CreateInstance<IServiceFactory>("");
// This is what we would like to do
IInvoiceService invoiceService = serviceFactory.getService(typeof(IInvoiceService));
invoiceService.executeOperation(data);
}
线索是每个客户端/服务器对的单个端点配置,而不是我希望提供的每个服务联系人的端点配置。
这可能吗?
【问题讨论】: