我获得了一组170个WSDL文件,我需要将它们转换为C#类文件。有没有办法批处理这个?
答案 0 :(得分:6)
如果你把所有这些都放在一个目录中,你应该运行这样的东西:
$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。
重要的部分可能是如何管理生成的代码的命名空间,以及如何命名所有这些文件。
答案 1 :(得分:0)
您可以使用svcutil.exe并编写批处理脚本或(甚至更好的)PowerShell脚本,以便从WSDL文件中生成代码文件。