首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WCF多端点与IServices

WCF多端点与IServices
EN

Stack Overflow用户
提问于 2011-05-30 02:42:49
回答 2查看 1.4K关注 0票数 5

我只是试图掌握使用WCF,我正在徘徊,如果有人可以告诉我,如果我有正确的想法与端点。

我一直在msdn上浏览视频,现在我在探索如何配置WCF服务。场景是,如果我有多个IServices,例如,我有一个IThis和IThat,而客户端同时需要访问(注意:他们将使用net.tcp),

  • IThis处理数据库查询,
  • IThat独立于数据库

处理计算。

我假设我必须为IThis和IThat定义单独的端点,它们分别在客户机中引用。还是我会创建一个在客户端中引用并包含这两个功能的总体IThisAndThat服务?

还是使用多个IServices开发和处理WCF服务的其他方法?当我问你的时候,你能为tcp定义基本地址吗?或者只定义http?

谢谢大家,任何帮助或指示都是很好的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-05-30 04:50:48

--我假设我必须为IThis和IThat定义单独的端点,它们分别在客户机中引用。还是我会创建一个在客户端中引用并包含这两个功能的总体IThisAndThat服务?

你可以两者兼得:

您可以创建一个单独的服务implementation类-一个用于IThis,另一个用于IThat

  • or,您可以创建一个实现IThisIThat

的服务实现类。

这个选择完全取决于你。

对于您拥有的每个服务implementation类,您可以定义任意数量的希望拥有的端点。因此,如果您有一个ThisService实现IThis,您可以为此定义一个HTTP和一个TCP端点,并且您还有一个实现IThatThatService,您可以为此定义一个IThat端点。这完全取决于你。

但是:只可以为每个服务implementation类定义端点--如果您有一个实现两个服务契约的ThisAndThatService,则不能为IThis定义3个端点,也不能为IThat定义两个不同的端点--您定义的端点是每个服务implementation类。

当我问

时,您能为tcp或仅定义http定义基本地址吗?

是的,当然--您可以为每个不同的寻址方案(http、net.tcp、net.msmq、net.pipe等)定义一个基本地址。

票数 4
EN

Stack Overflow用户

发布于 2011-05-30 04:24:05

一些基本知识:

每个服务都有一个或多个端点。端点是特定于其相关服务的,即每个端点只能属于一个服务,不能在服务之间共享。

端点定义了服务的入口点--它包括一个可供客户端使用的地址、绑定和契约。

不同的端点必须有不同的地址,并且可以有不同的绑定和契约(即它们不必)。通常,不同的端点有不同的绑定-即传输协议。如果特定的客户只需要访问某些操作,他们就可以有不同的合同。

最后,您的服务必须实现其各个端点公开的所有契约。

这里有一个非常简洁和简单的MSDN页面,它描述了这些概念。http://social.msdn.microsoft.com/Forums/en-US/wcf/thread/9f4391e9-8b9f-4181-a081-860d42b992a9/

网上有很多关于WCF的信息,还有很多需要学习的地方。最好看看一些教程或指南,集中在你想要做的事情上。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6171832

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档