WCF服务中的wsdl文件在哪里
Posted
技术标签:
【中文标题】WCF服务中的wsdl文件在哪里【英文标题】:Where is wsdl file in WCF service 【发布时间】:2011-11-07 19:26:59 【问题描述】:我在本地创建了一个 WCF Web 服务,当我访问 wsdl 文件时(http://localhost/myservice/service.svc?wsdl 它显示 wsdl 文件就好了。然后我将它上传到由 GoDaddy 托管的虚拟服务器,当我调用 http://my ip地址:myport/service.svc?wsdl 结果是显示“您已创建服务”的页面。当我调用相同的 url 但没有 ?wsdl(http://my ip 地址: myport/service.svc)。我怎样才能在虚拟服务器上获取我的 wsdl 文件?为什么这与我的本地机器不同?
【问题讨论】:
服务器上的配置文件和开发机器上的配置文件一样吗? 【参考方案1】:确保您在托管环境中的配置文件允许检索 WSDL 文档。它应该包含:
<behaviors>
<serviceBehaviors>
<behavior name="metadata">
<serviceMetadata httpGetEnabled="true" />
</behavior>
</serviceBehaviors>
</behaviors>
并在您的服务配置中引用此行为。
编辑:
只是为了说清楚。使用默认的 WCF 行为,WSDL 文件不存在。它是自动生成的,必须允许这种自动生成。
【讨论】:
好的,这是自动生成的,但它必须保存在某个地方,至少暂时... 虽然应该很明显,但行为元素需要关闭。我无法编辑帖子,因为它包含的更改太少。以上是关于WCF服务中的wsdl文件在哪里的主要内容,如果未能解决你的问题,请参考以下文章
下载 WCF 服务公开的所有 WSDL 文件的最佳方法是啥?
下载 WCF 服务公开的所有 WSDL 文件的最佳方法是啥?
如何从现有的 WSDL 和 XSD 文件生成 WCF 服务主机