公开WCF 4.0 Rest模板服务的元数据

时间:2011-02-17 21:51:11

标签: wcf wcf-client wcf-rest

可能遗漏了一些非常基本的东西。我创建了一个WCF 4.0 Rest服务。当我从浏览器访问网址时,它没有问题,而且我正在恢复我想要的内容。

但是现在我想从客户端mvc应用程序中使用该服务(它也将被其他非.net平台使用,这就是为什么它首先是一个休息服务。)

问题是如何获得服务引用,以便我可以开始在我的c#代码中使用它?使用新的最小WCF .net 4配置方法并且没有服务契约的接口,我不知道如何指定mex端点。最终,我不想在生产过程中使用mex端点,只是在开发过程中。我希望能够指定我的所有服务(在一个应用程序中大约10个)都有一个端点和一个小的配置,当我发布时,vs2010 .config转换就会消失。

1 个答案:

答案 0 :(得分:14)

Stop。 REST服务不使用元数据。元数据(Mex端点)仅用于SOAP服务,因为WSDL 1.1(WCF唯一的version supported)只能描述SOAP服务。 WADL或WSDL 2.0能够描述REST服务,但WCF目前不支持它们。

通过直接使用WebRequest或在共享合同之上构建ChannelFactory来消耗REST服务。两种方法都被描述为here。其他方法是使用REST Starter kit(以前的API)中的HttpClient。 Starter工具包的问题在于它从未到达RTM(它被WCF 4取代)。而不是元数据端点WCF 4 REST服务提供help page,其中描述了所有操作。使用WCF 4 REST模板时,应该已经打开了帮助页面 - 只需添加/帮助sufix到您的服务地址。 Here is another article关于构建REST客户端。