SVCUtil или WSDL пакетная обработка - PullRequest
7 голосов
/ 21 сентября 2009

Мне дали набор из 170 файлов WSDL, которые мне нужно преобразовать в файлы класса C #. Есть ли способ пакетной обработки этого?

Ответы [ 2 ]

6 голосов
/ 25 сентября 2009

Если у вас есть все из них в каталоге, вы, вероятно, должны выполнить что-то вроде этого:

$wsdls = gci | ? { $_.Name -like "*.wsdl" } | % { $_.Name }

Foreach ($wsdl in $wsdls) {
  & "C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\svcutil.exe" '$wsdl' /n:*,Your.Desired.Net.Namespace /o:'$wsdl'.cs /noconfig
}

Если есть подкаталоги, вы можете легко сделать это рекурсивным, и если у вас есть только список адресов, вы можете поместить их все в файл .txt, затем просмотреть содержимое и вызвать svcutil в каждой строке.

Вероятно, важной частью является то, как управлять пространством имен сгенерированного кода и как называть все эти файлы.

0 голосов
/ 21 сентября 2009

Вы можете использовать svcutil.exe и написать пакетный сценарий или (что еще лучше) сценарий PowerShell для создания файлов кода из файлов WSDL.

...