Вот очень простой пример того, как настроить службу WCF в вебе/app.config:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<services>
<service name="MyServiceTypes.MyService" >
<endpoint address="http://localhost:55555/MyService"
binding="basicHttpBinding"
contract="MyServiceTypes.IMyService" />
</service>
</services>
</system.serviceModel>
</configuration>
На стороне клиента, вы хотите использовать ту же конечную точки настройки, например:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<client>
<endpoint address="http://localhost:55555/MyService"
binding="basicHttpBinding"
contract="MyServiceTypes.IMyService" />
</client>
</system.serviceModel>
</configuration>
Существует множество способов настройки привязки и т. Д., Добавляя разделы bindingConfiguration и т. Д. Конфигурация привязки может быть там, где вы настраиваете свой потоковый режим.
Как правило, лучше всего использовать свой контрактный интерфейс; ваши услуги и реализации клиента; и ваши типы DataContract (ваши объекты передачи данных) в отдельной DLL, если сможете. Если у вас нет контроля над контрактом (например, вы получаете доступ к службе на компьютере, на котором вы не контролируете), простой способ генерации кода на стороне клиента - использовать «Добавить ссылку на службы» в Visual Studio или Инструмент svcutil. Мне нравится svcutil лучше, чем Add Service Reference, потому что он дает вам более легкий контроль над тем, где сгенерированный код попадает в ваш проект.