Sam*_*Sam 6 wcf soap wsdl visual-studio-2010
如何从现有WCF服务创建单个平面WSDL文件(没有来自内部的外部引用)?此WSDL将被使用(导入)为仅支持BasicHttpBinding的旧编程技术.请解答您对初学者的回答.
Irw*_*win 21
您现在可以在.net 4.5(测试版)中本机执行此操作.有一个选项(?singleWsdl而不是?wsdl)用于告诉服务在单个wsdl文档中输出所有内容.有关新内容的更多信息,请访问:http://msdn.microsoft.com/en-us/library/dd456789(v = vs1010).aspx
Phi*_*ohl 13
我也必须这样做.我使用了WSDLExtras库.这不是太大的交易.
以下是使用它的分步说明:
从这里下载WCFExtras ,解压缩并在VS中添加对它的引用.
像这样添加对Web.config/App.config的引用:
<system.serviceModel>
<extensions>
<behaviorExtensions>
<add name="wsdlExtensions" type="WCFExtras.Wsdl.WsdlExtensionsConfig, WCFExtras, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
</behaviorExtensions>
</extensions>
</system.serviceModel>
Run Code Online (Sandbox Code Playgroud)将扩展添加到端点行为并将singleFile属性设置为true
<endpointBehaviors>
<behavior name="singleFileEndpointBehavior">
<wsdlExtensions singleFile="True" />
</behavior>
</endpointBehaviors>
Run Code Online (Sandbox Code Playgroud)将endpointbehavior用于服务端点.
<endpoint address="YourEndPoint/Address" binding="YourBinding" behaviorConfiguration="singleFileEndpointBehavior" contract="IYourContract">
Run Code Online (Sandbox Code Playgroud)这对我来说很好.您还可以从WCFExtras项目页面下载完整的示例:ProjectPage
编辑: 为了完整起见:您可以使用自.NET 4.5以来的'?singleWsdl''查询参数,如Irwins的回答中所述.有关详细信息,请参阅他发布的链接.