繁体   English   中英

是否可以在编译时更改Web参考URL

[英]Is it possible to change a web reference URL at compile time

当前,我们有一个使用Web服务的应用程序。 对于我们的DEV,UAT和LIVE环境,Web服务URL是不同的,因为Web服务与不同的数据库通信(我不是这样设计的)。

我希望能够从一个源代码库构建所有三个版本。 目前,我需要在Visual Studio中手动编辑Web参考URL。 最好在编译时以某种方式指定Web参考URL。 我在想,也许我可以使用预构建钩子或其他方法来更改Web参考URL,但是如果可能的话,我不确定该怎么做。

我们的构建是从CruiseControl.NET触发的,只是为了向您提供整体信息。

您可以使用不同的构建配置来做到这一点吗?

我目前没有提供带有网络参考的示例,但是它将位于.csproj文件中。 您可以使用如下语法在csproj文件中有条件地包含注释:

  <Choose>
    <When Condition=" '$(Configuration)'=='Release' ">

         <!-- add the reference, web reference etc node here -->

    </When>
  </Choose>

您必须手动编辑.csproj文件才能执行此操作

您如何触发这些构建? 力。 更改网址。 力。 更改网址。 力? 如果是这样,请使用cruisecontrol参数选择所需的URL。 例如,将选择发送给您正在使用的任何构建任务,例如Nant。 在Nant中,使用所需的URL编辑代码文件并进行构建。 您必须从Nant中进行一些文件编辑才能更改URL。

如果您希望每次都构建所有三个版本,则不需要该参数。 第一次构建将触发其他两个,而不同的url将在构建任务中的某个位置进行硬编码。

我在Nant中使用过C#脚本,然后针对特定的构建风格编辑文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM