ОТВЕТ, РАСШИРЕННЫЙ ПРЕДОСТЕРЕЖЕНИЯМИ (и контекстом):
И не забывайте, svcutil.exe - это всего лишь инструмент. Вы можете изменить или расширить сгенерированный код - нет запрета на него. Хотя, конечно, есть недостатки в настройке сгенерированного кода, и вы должны делать это только с широко открытыми глазами.
В прежние времена, когда я собирал разнородные клиенты и серверы вместе через веб-службы, я регулярно прибегал к изменению сгенерированного WSDL, изменяя код, сгенерированный из WSDL (я написал множество сценариев sed для замены пространств имен при подключении AXIS и .NET ) и другие индивидуально подобранные подходы. Некоторые из веб-сервисов, которые были самыми длинными, все еще требуют этого. Одним из примеров является MS Office Research Service, которая вообще не отправляет WSDL ...
Другой подход, который может работать, а может и не работать, - расширять сгенерированный код .NET с помощью частичных классов. Это отличный способ настроить пространства имен XML, добавить дополнительные элементы (например, строку версии?) И внести другие изменения. И когда вы заново сгенерируете код, ваши расширения не будут перезаписаны.
РЕДАКТИРОВАТЬ: Судя по downvote, некоторые люди думают, что это слишком рискованно !!! Я полностью понимаю.