gpt4 book ai didi

vb.net - 从 VB.Net 中的 app.config 获取动态更新的连接字符串

转载 作者:行者123 更新时间:2023-12-02 00:16:16 25 4
gpt4 key购买 nike

我在 app.config 中有如下连接字符串

<add name="CONN" connectionString="SERVER=SERVER\SQLEXPRESS;DATABASE=TRIAL_LINK;uid=sa;pwd=trial"
providerName="System.Data.SqlClient" />

我有一个名为 DBLinker 的表单,我在其中为用户提供了选择其他服务器和数据库的选项。例如,我选择服务器名称为“MAILSERVER”,数据库名称为“Actual”。我正在使用以下代码覆盖 app.config 文件。

Dim config As System.Configuration.Configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None)

Dim mySection As ConnectionStringsSection = DirectCast(config.GetSection("CONN"),ConnectionStringsSection)
Dim conStr As String = "SERVER=MAILSERVER;DATABASE=Actual;uid=sa;pwd=trial"

config.ConnectionStrings.ConnectionStrings("CONN").ConnectionString = conStr
config.Save(ConfigurationSaveMode.Full)


ConfigurationManager.RefreshSection(config.AppSettings.SectionInformation.Name)

在这段代码之后,我试图为应用程序打开一个登录表单。但是当我试图在这里访问连接字符串时,它正在获取以前的字符串而不是更新后的字符串。

最佳答案

How to programmatically override web.config settings

看起来您无法在运行时更改 web.config 并使其在应用程序运行时生效。您可以通过将设置作为字符串的基础部分然后使用用户选择来构建其余部分来解决这个问题。您始终可以将新字符串保存在 Session、cookie 或 Db 中,以便在需要时方便使用,具体取决于您的需要。

希望这对您有所帮助。

关于vb.net - 从 VB.Net 中的 app.config 获取动态更新的连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12928689/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com