Да, поведение части Add Service Reference
в Visual Studio является основной PIA - и она не была улучшена ни на йоту в VS 2010, к сожалению: - ((
И, что еще более прискорбно, вы не можете сказать импортеру оставить свои существующие вещи в покое - я создаю резервную копию моего web.config, импортирую службу WCF и позволяю импортеру испортить мой web.config и затем я просто добавляю свою резервную копию в беспорядок и продолжаю делать необходимые дополнения вручную.
Одной из альтернатив является использование svcutil.exe
в командной строке - прежде всего, вы можете указать это /noconfig
и пропустить переписку с вашим конфигом (или вы можете вывести рекомендованный конфиг в отдельный конфиг с другим именем), а во-вторых, он с радостью создаст ваш класс прокси-сервиса на стороне клиента в файле C # или VB.NET, готовом к использованию.
Но да - конечно, вы можете добавить всю необходимую информацию вручную!
В типичной конфигурации на стороне клиента, наиболее важным моментом является тег <client>
- просто добавьте все, что вам нужно - используя "ABC of WCF" - (A) адрес, (B) inding, (C) ontract:
<client>
<endpoint name="something-useful"
address="your-address-on-the-server"
binding="wsHttpBinding" -- or whatever it is you're using
contract="IYourServiceContract" />
Это минимальная конфигурация на стороне клиента, которая вам нужна. Все остальное - просто дополнительный материал, используемый при необходимости. Здесь, очевидно, используются все настройки по умолчанию для вашей привязки.
Вот два действительно хороших видео, которые показывают, как выполнить ручную настройку WCF - звучит страшно, оказывается намного проще, чем расшифровывать беспорядок, создаваемый импортером VS ....