首页 > 解决方案 > 临时更改 app.config 中的连接字符串

问题描述

我有一个 DB2 环境,我想用 Entity Framework 连接到该环境。为此,我需要一个如下所示的连接字符串,在app.config文件中:

<connectionStrings>
  <add name="DB2Connect" connectionString="Database=my_db; UID=Username; PWD=Password;"/>
</connectionStrings>

将密码硬编码到文件中似乎不是一个好主意app.config,所以我想在运行时替换它,但只是暂时的!临时的部分,是什么给我带来麻烦。我已经成功地用以下代码替换了连接字符串,但是当密码保留在 app.config 文件中时,这并不好,之后:

private static void SaveConnectionString(string name, string connectionString)
{
    Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
    var connectionStringsSection = (ConnectionStringsSection)config.GetSection("connectionStrings");
    connectionStringsSection.ConnectionStrings[name].ConnectionString = connectionString;
    config.Save();
    ConfigurationManager.RefreshSection("connectionStrings");
}

标签: c#entity-frameworkdb2connection-stringapp-config

解决方案


不确定我是否在这里回答不同的问题,但如果您正在寻找在构建发布时没有/不同连接字符串的解决方案,您可以查看: https ://marketplace.visualstudio.com/items?itemName =vscps.SlowCheetah-XMLTransforms


推荐阅读