如何在构建时自动更新Web参考?

时间:2020-03-06 14:59:50  来源:igfitidea点击:

我有一个.net项目,其中包含对服务的Web引用。我想在每个构建中更新该Web参考。那可能吗?

解决方案

另外,在生产环境中部署Web服务时,请确保将其设置为动态而不是静态。

我们可以使用svcutil(http://msdn.microsoft.com/zh-cn/library/aa347733.aspx)工具为我们生成Web参考。该工具将生成正确的客户端代理类和正确的配置(甚至可以将其合并到应用程序配置中)。请记住,该工具需要.Net 3.0,并将生成WCF样式的客户端代理和配置。

我们可以将MSBuild脚本与调用wsdl.exe的任务一起使用

<Target Name="UpdateWebReference">
    <Message Text="Updating Web Reference..."/>
    <Exec Command="wsdl.exe /o &quot;$(OutDir)&quot; /n &quot;$(WebServiceNamespace)&quot; &quot$(PathToWebServiceURL)&quot;"/>
  </Target>

我们可以使用其他答复者提供的方法来执行此操作,但是我们必须知道,这样做可能会导致构建失败。如果更改了WSDL,则生成的代码也将更改,并且代码可能不再编译。