我正在尝试使用Svcutil导出元数据以通过本地托管服务生成代理。我不想进入Visual Studio并单击“添加服务参考”,因为这是我的学习练习(!)
我正在使用svcutil,如下所示:
Svcutil / d:c:\ temp / t:元数据http://localhost/IISCalculatorService/service.svc
然后,这将生成两个WSDL文件,calculatorservice.wsdl和tempuri.org.wsdl。但是我期望它也可以生成两个.XSD文件。没有这些.XSD文件,我将无法使用svcutil生成客户端代码。
我在使用svcutil时是否缺少某些东西?还是我的理解不足?任何帮助表示赞赏。
这是服务的web.config
<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0"/>
</system.web>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
<services>
<service name="CalculatorService.Calculator">
<endpoint address="" binding="basicHttpBinding" contract="CalculatorService.Contracts.ICalculator" />
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
</configuration>
最佳答案
如果您直接寻找服务参考,可以尝试一下
svcutil.exe http://localhost/IISCalculatorService/service.svc?wsdl
希望对您有帮助。