在谷歌搜索了一下之后,对于 Visual Studio 2008 是否使用 svcutil.exe 没有明确的答案? Visual Studio 2005 确实使用了它,但是 Visual Studio 2008 的 RTM 版本是否使用 svcutil?一些博客说它没有(并使它看起来令人惊讶)
和其他网站说确实如此。
我问的原因是我们正在使用自定义端点行为扩展(IWsdlExportExtension/IEndpointBehavior 的实现)扁平化我们的 WCF wsdl,并通过 Visual Studio 2008 的 Add Reference 使用扁平化的 wsdl 给我们带来编译错误,因为它复制类型/类。添加引用没有任何错误。另一方面,SvcUtil 将重复的类扔到一个单独的命名空间中,从而解决了构建问题。
所以 SvcUtil 可以工作,但 Visual Studio 2008 不能在我们的一些扁平化 wsdls 上运行。如果 Visual Studio 中的添加服务引用不起作用,我们可以继续使用 svcutil,但想知道是否有人知道这样做是否有任何影响。我找不到任何证据表明我们“不应该”使用 svcutil,只是它不像在 Visual Studio 2008 中使用添加服务引用那么容易。
最佳答案
svcutil 和 VS2008 最终调用相同的 WCF 代码位。它是使用实际的 exe 还是调用 dll 是一个小细节。如果有的话,我更喜欢命令行工具,因为它具有更大的灵活性(或者我可能只是喜欢命令行;-p)。
请注意,WCF 可以通过 IDE 和命令行 (/r?) 重新使用现有类型。但是这种类型的命名空间问题只是我更喜欢使用命令行版本的众多事情之一。
关于visual-studio-2008 - Visual Studio 2008 是否使用 SvcUtil.exe,如果 "No"使用 svcutil 有什么缺点吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/408217/