Я не уверен, как (и если) вы можете изменить поведение мастера веб-ссылок VS.
Однако вы можете использовать wsdl.exe или svcutil.exe (в зависимости от того, хотите ли вы использовать в своих службах клиентский прокси-сервер в стиле System.Web или WCF) из командной строки и указать соответствующий параметр для общих типов.
Для wsdl.exe необходим параметр командной строки /sharetypes
, хотя я не затрагивал его годами, поэтому не помню точных подробностей использования.
Для svcutil.exe необходим параметр командной строки / reference :. Это вам нужен общий класс в сборке, на которую вы можете ссылаться. Если единственное определение общего класса, к которому вы можете получить, находится в WSDL двух сервисов, вам может потребоваться использовать svcutil.exe для создания клиентского прокси, обрезать его, чтобы он содержал только общий класс, и построить из него эталонную сборку для фактических клиентских прокси для двух сервисов.
Недостаток этого подхода заключается в том, что если WSDL для одной из служб изменяется, вам необходимо снова запустить инструмент. Этого можно избежать, добавив в ваш проект настраиваемую задачу для цели BeforeBuild, которая всегда запускает инструмент для обеих служб.