我创建了一个新的 WCF Web 服务,但是当我尝试运行它时,出现此错误
未生成任何代码。如果您尝试生成客户端,这可能是因为元数据文档不包含任何有效的合同或服务,或者因为发现所有合同/服务都存在于 /reference 程序集中。验证是否已将所有元数据文档传递给该工具。警告:如果您想从架构生成数据契约,请确保使用 /dataContractOnly 选项。
我的web.config样子
<services>
<service name="namespace.serviceName"
behaviorConfiguration="MyServiceTypeBehaviors" >
<endpoint
address="mex"
binding="mexHttpBinding"
contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="MyServiceTypeBehaviors">
<serviceMetadata httpGetEnabled="true" />
</behavior>
<behavior name="">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
Run Code Online (Sandbox Code Playgroud)
背景是,我dll从第三方获得了一个新的 Web 服务,以便我可以实现所需的所有接口方法,但是当我尝试通过 Visual Studio 运行此 Web 服务时,我收到上面显示的错误。
如果我直接运行website.com/folder/serviceName.svc,我会看到该服务,但单击它不会执行任何操作。
更新:我已经修复了上述错误,我在web.config文件中进行了一些更改,但现在当我运行我的服务时,我没有得到任何方法(我正在使用 Visual Studio 内置的 WcfTestClient)
小智 2
我认为您需要添加一个具有正确 ServiceMethod 属性的合同接口,如下所示http://msdn.microsoft.com/en-us/library/ms731835(v=vs.110).aspx
这将允许 WCF 的内部为您生成 wsdl,并且也将允许 svcutil.exe 为您生成客户端代码。
忘记提及您也希望您的服务继承它,所以也许您可以从命名空间.serviceName 推断它?
另外,不要忘记界面上的 DataContract 和 ServiceContract 属性。
| 归档时间: |
|
| 查看次数: |
10533 次 |
| 最近记录: |