在.Net 3.5 Web项目中使用HTTPS Web服务

时间:2010-05-25 10:23:23

标签: c# .net-3.5 soap wcf

我正在尝试使用仅在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

1 个答案:

答案 0 :(得分:0)

将Web服务添加到项目时,请使用“https”URI方案。这将生成具有适当位置属性的WSDL文件。这些方面的东西:

https://ogserv.domain.co.uk/ogwsrv/og.asmx?WSDL

如果您手动编辑WSDL,那么在Visual Studio中使用“更新服务”选项时,您的更改将被覆盖。