发布管理 - 使用 Tokenize 更改连接字符串

Release Management - Change Connection String using Tokenize

我希望这是一个非常直截了当的问题...根据我在网上找到的内容,通过 Microsoft Release Management 管理更改 web.config 连接字符串的最佳方法是使用 tokanized web.config 文件(即复制 web.config 并将其重命名为 web.tokenized.config),然后对连接字符串进行汉化。

然而我没能弄清楚的是为什么需要制作一个单独的 'tokenized' web.config...这个文件是在 web.config 上引用的吗?在原始 web.config 中应用标记化参数是不好的做法吗?

您需要 web.config 的 "untokenized" 版本才能从 Visual Studio 本地 debug/run 应用程序。

来自documentation"One version is your normal configuration file used during local development, and the other is a corresponding file that has the same content, except that instead of having local values for your variables, tokens have been put there. The build activity will swap those two files before doing the build, so that we end up with the tokenized version of the configuration files in the drop location."

在我看来,维护配置文件的副本是一项痛苦的维护开销,因为它们必须保持同步。如果可能的话,更好的办法是在构建过程中生成标记化的配置文件。对于 web.config,您可以将转换功能与 /p:UseWPP_CopyWebApplication=true /p:PipelineDependsOnBuild=false MSBuild 参数结合使用。我有一个博客 post here,其中包含详细信息。