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

Aar*_*man 0 wcf web-reference projects-and-solutions service-reference

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

例:

MyWebAppProj
-Services
--MyService
-Service References
--MyServiceServiceReference.MyServiceClient
-Default.aspx.cs使用MyServiceServiceReference.MyServiceClient

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

tom*_*asr 5

我不明白你为什么要那样做.

如果您已经在与服务相同的项目中,那么至少您已经可以访问所有服务/数据合同,所以实际上,调用该服务已经非常非常容易.您可以直接使用ChannelFactory,也可以编写自己的自定义ClientBase <T>来源客户端代理类(这很简单),在这种情况下,您没有理由要添加服务引用.

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