【发布时间】:2011-08-12 20:43:36
【问题描述】:
我正试图通过解决一些痛点来帮助一个项目团队简化他们的工作。
他们在代码中的痛点之一是,他们通过服务引用(代理)使用 WCF 服务 [即Visua Studio 2008 中的“添加服务引用”。这会产生很多问题,包括部署开销、Souce Control 获取更新代理等最新相关问题。
为了处理这些和其他与服务引用相关的问题,我正在寻找一个很好的替代服务引用的方法。我已经看过ChannelFactory,我最倾向于那个。这似乎是一个很好的解决方案。
但问题是,有很多代码像这样使用这些服务
BatchClient client = new BatchClient(); //Batchclient is a proxy
batchData = client.GetBatchData(batchNumber)
因此,如果我使用 ChannelFactory 路径,我将需要在整个项目中更新所有代码片段,如上述。由于更改量很大,团队对此选项不太满意。
我的问题是,除了“添加服务引用”之外,还有其他更好的替代方法吗?只需最少的代码更改即可使用?或者有什么方法可以在不影响现有代码的情况下使用 ChannelFactory?
【问题讨论】:
-
这不会解决您的问题,但通常最好针对接口而不是实现类进行编码以避免此类情况。
-
我发现一个接口是一个共享的dll往往不那么痛苦。
标签: .net wcf channelfactory service-reference