Во-первых, вы используете Visual Studio 2005 или 2008? Затем, если вы используете VS2005, устанавливали ли вы инструменты .NET 3.0 CTP для WCF / WF, выпущенные в 2006 году? Я задаю эти вопросы, потому что хотел узнать, как вы настраиваете свой прокси-класс в клиенте. Вы щелкнули правой кнопкой мыши и сделали «добавить ссылку на сервис» или «добавить веб-ссылку»
Кроме того, ваш конфигурационный файл WCF похож на приведенный ниже? Это показывает двойную настройку, как Basic, так и WsHttp Bindings.
<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>