使用 WCF 3.5 和来自 Christian Weyer 的 FlatWsdl EndpointBehavior,我能够为我的 WCF 服务获取单个平面 WSDL 文件,而无需任何<import>
指令。
现在,对于 WCF 4,由于某种原因,这不再起作用。
我已经尝试了很多博客文章中描述的所有内容,包括使用Wcf 额外行为延伸。
他们都指的是 Chr。 Weyers 解决方案或推荐 WcfExtras。
我还确保为绑定、ServiceContract 和 ServiceBehavior 指定了相同的命名空间。
在自定义服务主机中,当即将注入FlatWsdlExtension时,Description.Endpoints集合始终为空。我尝试使用或不使用地址来配置我的服务端点,但到目前为止还没有成功。
我需要做什么才能为我的 WCF 4 服务获取单一的平面 WSDL?
感谢您的任何答复。
我正在吃这个exact问题。经过今天的多次尝试,我终于通过执行以下操作使其工作:
完整阅读这篇博文。
确保在 ServiceContract、ServiceBehavior 和 bindingNamespace(.config->services/service/endpoint 部分)中指定完全相同的命名空间属性。
请注意这个问题,我确实曾经遇到过。
Download此 zip 文件并在项目中的某个位置包含 FlatWsdl/Extensions:FlatWsdl.cs、FlatWsdlServiceHost.cs 和 FlatWsdlServiceHostFactory.cs。
确保在 .svc 文件的 ServiceHost Factory 属性中指定您的 FlatWsdlServiceHostFactory.cs 版本的完全限定类名(当然不包括 .cs)。
我今天尝试了 WcfExtras 等其他东西 - 可能或多或少,但这些步骤最终让我继续前进。祝你好运!
[edit]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)