我的 WCF 从未与 wsbinding 一起使用,但是当我切换到 basic 时,它运行良好。
我必须做什么才能使 wsbinding 工作?
更新
当我说它不起作用时,我的意思是客户端永远无法使用服务端点。
我必须在某处添加用户名/密码吗?
首先,您使用的是 Visual Studio 2005 还是 2008?接下来,如果您使用的是 VS2005,您是否安装了 2006 年发布的用于 WCF/WF 的 .NET 3.0 CTP 工具?我问这些问题是因为我想知道您如何在客户端中设置代理类。您是否右键单击并执行“添加服务参考”或“添加网络参考”
另外,您的 WCF 配置文件是否类似于以下内容?这显示了双重设置,基本和 WsHttp 绑定。
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding name="wsHttp">
<security mode="None">
<transport clientCredentialType="None" />
<message clientCredentialType="None" negotiateServiceCredential="false" establishSecurityContext="false" />
</security>
</binding>
</wsHttpBinding>
<basicHttpBinding>
<binding name="basicHttp"/>
</basicHttpBinding>
</bindings>
<behaviors>
<serviceBehaviors>
<behavior name="NorthwindBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service behaviorConfiguration="NorthwindBehavior" name="SampleApplicationWCF.Library.SupplierService">
<endpoint binding="wsHttpBinding" bindingConfiguration="wsHttp" name="wsHttpSupplierService" contract="SampleApplicationWCF.Library.ISupplierService" />
</service>
</services>
</system.serviceModel>