svcutil имеет аргумент / namespace, который позволяет отображать пространства имен wsdl в заданное пространство имен кода. Вы можете предоставить этот аргумент несколько раз, но он недостаточно хорошо документирован, поэтому вам, возможно, придется поэкспериментировать с ним ... вы можете указать подстановочный знак, но я не уверен, что вы можете выделить одно пространство имен и подстановочный знак остальное.
Я не уверен в этом, но я думаю, что если вы сделаете оба wsdl одновременно, я думаю, что они объединятся в один файл .cs ... возможно, это будет достаточно умно, чтобы не дублировать классы при этом точка.
Например,
svcutil.exe "User.wsdl" "Customer.wsdl" "Commons.xsd"
/n:UserAddressNamespace,User.Address
/n:*,User
Надеюсь, что это здорово, я бы хотел дать вам лучший ответ, но я давно не пользовался wsdl.