在WCF服务中,我删除了默认的Mex绑定,并将默认服务行为中的httpGetEnabled属性设置为false。
有了这个,我的理解是该服务不允许下载WSDL。但是,该服务的现有客户端可以顺利运行。
现在,当我浏览到Internet Explorer中的.svc时,它会提供3条内容来帮助我查看.svc文件的结构。
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
现在让我回答我的问题。
当我只是将httpGetEnabled =“true”时,我能够下载WSDL。 我在这里看不到mex端点的重要性。
这里mex终点的真正意义是什么?当httpGetEnabled给我提供下载WSDL的选项时,创建mex端点需要什么?
答案 0 :(得分:4)
如果要使用WS-MetadataExchange而不是WSDL来获取服务元数据,则Mex端点才会变得非常重要。您可以启用其中一个或两个。
AFAIK,svcutil.exe可以使用WSDL或mex,所以不用担心;但是你的客户可能只支持其中一个。