我已经为了解决这个问题奋斗了几个小时。
我有一个托管在II7上的WCF服务,当我使用普通的http协议时,一切正常。
我添加了SSL功能,从那以后就无法从代码中访问它。我可以创建一个客户端,但无法运行其任何方法。
下面是我的代码:
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding name="WSHttp0">
<security mode="Transport">
<transport realm ="" clientCredentialType="None" />
</security>
</binding>
</wsHttpBinding>
</bindings>
<client>
<endpoint address="https://serverName.domname.local/WCFTest/MyWebServicec.svc"
binding="wsHttpBinding" bindingConfiguration="WSHttp0" contract="SSLWebService.IMyWebService"
name="WSEP">
<identity>
<dns value="serverName.domname.local" />
</identity>
</endpoint>
</client>
</system.serviceModel>
我在我的项目中添加了一个服务引用
然后我像这样使用它
Dim client As MyWebServiceClient = New MyWebServiceClient()
Try
client.GetDocumentByDocID(5)
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
以下是我的结果:
没有端点在https://serverName.domname.local/WCFTest/MyWebService.svc上监听请求,可能是由于地址或SOAP操作不正确造成的。如果存在InnerException,请参见更多详细信息。
有人可以帮我解决这个问题吗?我真的不明白发生了什么……
注意:我可以使用Internet Explorer正确访问WebService(所以我想我的证书没问题)。