我已经在本地创建了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文件,为什么发生的情况与本地计算机不同?
最佳答案
确保托管环境中的配置文件允许检索WSDL文档。它应包含以下内容:
<behaviors>
<serviceBehaviors>
<behavior name="metadata">
<serviceMetadata httpGetEnabled="true" />
</behavior>
</serviceBehaviors>
</behaviors>
并在您的服务配置中引用此行为。编辑:
只是为了清楚起见。使用默认的WCF行为,WSDL文件不存在。它是自动生成的,并且必须允许此自动生成。
关于wcf - WCF服务中的wsdl文件在哪里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7260708/