首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在调用终结点之前,我可以找出终结点支持哪些WCF方法吗?

在调用终结点之前,我可以找出终结点支持哪些WCF方法吗?
EN

Stack Overflow用户
提问于 2010-05-19 06:35:34
回答 1查看 1.2K关注 0票数 0

我有一个WCF服务契约的版本控制问题,在该契约中,为操作调用的许多端点中的一个从契约中缺失了一个方法。

我的问题是,在尝试调用该命令之前,如何确保该命令在客户端可用?

我试过了:

代码语言:javascript
复制
  foreach (var od in proxy.Endpoint.Contract.Operations)
  {
    if (od.Name == "MyMethodName")
    {
      hasMethod = true;
      break;
    }
  }

不幸的是,这使用的是调用应用程序中的约定,并没有实际描述端点本身上的实现。因此,即使终结点无法实现该命令,它也会返回true。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-05-19 06:48:15

除非你尝试过,否则你永远不会真正知道。您所拥有的是已实现契约的代理,但是服务器端的内容可能在您创建/生成它之后发生了变化。

假设它是一个http/httpws实现,我想您可以调用并检查服务引用并下载wsdl文件。这将告诉你支持哪些方法等。你将遇到的问题是,即使方法的名称可能相同,你也必须检查返回类型和参数,以真正确保它是相同的方法,并且可以使用当前拥有的代理调用它。

这里有一个关于WCF中版本控制的链接:

http://msdn.microsoft.com/en-us/library/ms731060.aspx

以下是有关WCF的版本控制最佳实践的链接:

Best practices for versioning your services with WCF?

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

https://stackoverflow.com/questions/2861637

复制
相关文章

相似问题

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