【问题标题】:Runtime Configuration in .Net (specifically the EntLib).Net 中的运行时配置(特别是 EntLib)
【发布时间】:2008-08-19 04:32:13
【问题描述】:

我正在寻找一种在运行时配置数据库连接的方法;专门使用企业库。我看到有一个 *.Data.Configuration (或接近这个的东西......不记得我的头顶)组装但在互联网上发现的不多。更复杂的是,API 帮助在 Vista 上被破坏了。

现在,我找到了这个解决方法:

Configuration cfg = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
ConnectionStringSettings connection = new ConnectionStringSettings();
connection.Name = "Runtime Connection";
connection.ProviderName = "System.Data.OleDb";
connection.ConnectionString = "myconstring";
cfg.ConnectionStrings.ConnectionStrings.Add(connection);
cfg.Save(ConfigurationSaveMode.Modified);

ConfigurationManager.RefreshSection("connectionStrings");
var runtimeCon = DatabaseFactory.CreateDatabase("Runtime Connection");

虽然它给了我想要的东西,但它会永久编辑 App.config。当然我可以返回并删除更改,但我不想经历这些麻烦。

【问题讨论】:

  • 我仍在寻找这个问题的答案。有什么想法吗?

标签: .net enterprise-library connection-string


【解决方案1】:

如果您使用的是 winforms 应用程序,您可以尝试使用 UserProperties 来存储此信息。另一个可能的解决方案是custom configuration sections

【讨论】:

    【解决方案2】:

    如果您不想保存它,则无需执行 cfg.Save 命令。

    配置对象将存储您的更改,直到不再需要为止。

    【讨论】:

      【解决方案3】:

      不,您必须保存才能让 EntLib(以及,我怀疑,任何其他工具)看到更改。

      【讨论】:

        猜你喜欢
        • 2014-02-22
        • 1970-01-01
        • 2013-05-18
        • 2013-07-27
        • 2013-10-30
        • 2011-05-08
        • 1970-01-01
        • 1970-01-01
        • 2021-09-24
        相关资源
        最近更新 更多