我正在尝试使用仅在HTTPS上运行但在VS中使用“添加服务”方法或使用WSDL生成代码文件的Web服务,这使我得到一个表明其http ...的Web服务。 p>
<wsdl:service name="OGServ">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">XML Web Services element of OGServ Gateway</wsdl:documentation>
<wsdl:port name="OGServSoap" binding="tns:OGServSoap">
<soap:address location="http://ogserv.domain.co.uk/ogwsrv/og.asmx" />
</wsdl:port>
<wsdl:port name="OGServSoap12" binding="tns:OGServSoap12">
<soap12:address location="http://ogserv.domain.co.uk/ogwsrv/og.asmx" />
</wsdl:port>
</wsdl:service>
这是否是因为即使我将app.config(由add-service生成)端点地址更改为https,它也说它期待HTTP?
错误:
EC.Tests.OGGatewayLayerTest (TestFixtureSetUp):
System.ArgumentException : The provided URI scheme 'https' is invalid; expected 'http'.
Parameter name: via
答案 0 :(得分:0)
将Web服务添加到项目时,请使用“https”URI方案。这将生成具有适当位置属性的WSDL文件。这些方面的东西:
https://ogserv.domain.co.uk/ogwsrv/og.asmx?WSDL
如果您手动编辑WSDL,那么在Visual Studio中使用“更新服务”选项时,您的更改将被覆盖。