从webHttpBinding端点获取元数据
在参考我之前的问题时 ,我想知道如何从客户端应用程序中提取WCF服务的信息,以了解如果服务只公开一个使用webHttpBinding的端点,那么会暴露哪些方法/类型?
总而言之,在我之前的问题中,我开始知道使用webHttpBinding的端点不会在生成的WSDL中暴露,因为它将是一个JSON端点并且只是不兼容。
WebHttpBinding是一个基于REST的绑定 – 与SOAP相反,REST不会像WSDL / XSD 那样公开元数据。
目前无法从REST端点提取元数据。 正在进行一些努力来为REST建立一个类似WADL(Web应用程序描述语言)的构造 – 但这种方法还远未达到标准化。
现在,使用REST端点,您必须自己弄清楚,或者您需要由服务提供商提供一些文档,例如静态HTML页面或其他东西。
.NET 4确实提供了某种程度的自动生成的帮助页面 – 有关详细信息,请参阅此博客文章或MSDN文档 。 但它仍然远不如WSDL / XSD那样正式化和机器可解释。
我想知道为什么REST样本会告诉你暴露MEX端点。 它不是必需的,这里是如何干净地删除它:
-
从配置文件的服务部分删除MEX端点。
-
删除配置文件的服务行为部分中启用服务元数据的行。
-
编辑Visual Studio项目(假设它是一个WCF服务库)并删除该行:
/客户端: “WcfTestClient.exe”
如果您有其他非rest服务,您将希望留下最后两个部分。 您必须在禁用MEX时删除WCF客户端,否则如果它无法枚举项目中的任何服务(无论它们是否具有任何有用的元数据),它将在调试期间进行投诉。
上述就是C#学习教程:从webHttpBinding端点获取元数据分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1001066.html