如何设置WCF

时间:2014-06-22 17:27:58

标签: wcf

我经历了很多帖子但是,我无法清除与WCF服务相关的一些基本疑问,如下所示:

  1. 为什么要为Service.ContractsService.Implementation保留单独的类库项目程序集? 我们可以在单个组件中多次实现一个接口。 它假设创建--WCF应用程序项目并将接口分别维护到单独的文件夹和SVC.cs文件中。

  2. 添加服务引用不是一个好选择,因为它将所有模式添加到客户端。 svcutil.exe也做同样的事情。那么,在客户端使用wcf服务的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

所有内容都在这篇精彩文章中解释 - WCF the Manual Way…the Right Way

基本上,添加服务参考 svcutil 只会导致客户代理随着时间的推移而过时;以及解决方案具有为基本相同的类定义的多种类型的事实。

更新:自从写完这个答案后,我已经学会了在另一座城堡中找到答案,所以我在下面更新:

基本上, WCF手动方式......正确的方式描述的是,而不是使用添加服务参考,而是将您的WCF系统划分为单独的dll for:

  1. 合同
  2. 服务实施
  3. 滚动您自己的客户代理
  4. 服务和客户都将正常的代码引用(不是服务引用)添加到合同dll

    通过这种方式,服务和客户端使用相同的类型(而不是客户端中的代码生成的类型),并且当合同更改时 - 服务和客户端都被强制更新,而不会出现编译错误。没有更多过时的客户。