在同一项目中向WCF服务添加服务引用

时间:2010-01-25 21:56:58

标签: wcf projects-and-solutions service-reference web-reference

将一个服务引用添加到项目中是否可以接受编程实践,其中被引用的服务是在同一VS项目中定义的? (服务和服务参考在同一个项目中)

示例:

MyWebAppProj
-Services
--MyService
- 服务参考文献
--MyServiceServiceReference.MyServiceClient
-Default.aspx.cs使用MyServiceServiceReference.MyServiceClient

这背后的理性是可以在项目中添加Silverlight应用程序。如果是,我们必须通过服务层公开所有业务逻辑方法,所以为什么不先这样做,并在各处使用它们在网页和Silverlight页面之间保持标准化。

1 个答案:

答案 0 :(得分:5)

我不明白你为什么要这样做。

如果您已经在与服务相同的项目中,至少您已经可以访问所有服务/数据合同,所以实际上,调用该服务已经非常非常容易。您可以直接使用ChannelFactory,也可以编写自己的自定义ClientBase< T>来源客户端代理类(这是微不足道的), no 在这种情况下你想要添加服务引用的原因

此外,如果你添加了一个服务引用,那么你会在同一个项目中遇到一堆重复的定义,这没什么意义(是的,你可以将生成的代码隔离到一个单独的命名空间中,但仍然)