... Я не хочу, чтобы поставщики были привязаны к явной технологии.
Вы принимаете о веб-службах. Идея веб-сервисов заключается в том, что они позволяют взаимодействовать между разнородными машинами (и технологиями).
Для того, чтобы взаимодействие происходило, нет необходимости, чтобы машина использовала один и тот же язык программирования или технологию. Что важно, так это используемый протокол. В вашем случае SOAP.
Протокол определяет интерфейс связи или контракт . Для веб-служб интерфейс описывается языком описания веб-служб (ваш WSDL).
WSDL представлен в (более или менее) удобочитаемом для человека формате, но, что более важно, в машинно-обрабатываемом формате. Идея состоит в том, что вы используете WSDL для генерации кода / классов, соответствующих контракту; на стороне сервера они называются Skeletons, а на стороне клиента - Stubs.
У многих языков программирования есть средства или инструменты для создания заглушек / скелетов из WSDL, но опять же, это не важная часть. Важной частью является соблюдение договора .
WSDL просто позволяет автоматизировать создание некоторого стандартного кода. Использование WSDL не обязательно для создания сервера / клиента, поэтому можно использовать любую технологию (с WSDL или без него).
Пока вы это делаете, вы не привязываетесь к явной технологии. Таким образом, в «веб-службе WCF», которую вы упоминаете, вы можете опустить слово «WCF».
Единственная забота, которую вы должны соблюдать, - это интерфейс между системами . Вы должны обеспечить совместимость веб-сервисов , поскольку мы не живем в идеальном мире, а некоторые особенности из стека технологий могут «просочиться» в контракт, если вы не будете осторожны.