在几个项目的 App.config 文件中,有一行
<add key="url" value="http://www.example.com/"/>
在每次构建时,我都希望有一个任务来验证"url"
密钥是否没有text "http://localhost"
。有没有办法做到这一点?
在几个项目的 App.config 文件中,有一行
<add key="url" value="http://www.example.com/"/>
在每次构建时,我都希望有一个任务来验证"url"
密钥是否没有text "http://localhost"
。有没有办法做到这一点?
我假设您有一个团队,并且您的一些团队成员无意中签入了这些配置,将该值更改为 localhost。
如果是这种情况,为什么不为每个环境提供转换文件,您的调试配置可以将密钥设置为 localhost,而您的 production/test/stage/qa/whatever 配置可以将其设置为 example.com 或其他内容。
您可能不知道 msbuild 可以转换您的配置文件。基本上你有你的主配置文件,然后是一个配置文件,其中包含每个环境的更改内容。在进行构建时,msbuild 将使用其他“转换”文件中的任何更改来修改主要的。
不是 Visual Studio 2010 中的 Web 项目的项目的 App.Config 转换?
您的转换文件如下所示:
<?xml version="1.0"?>
<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<appSettings>
<add key="url" value="http://www.example.com/" xdt:Locator="Match(key)" xdt:Transform="SetAttributes"/>
</appSettings>
</configuration>
微软链接是http://msdn.microsoft.com/en-us/library/dd465326(VS.100).aspx
它们可以很容易地在 web.configs 和 app.configs 上使用,只需对您的项目文件进行一些调整。