如何在运行时重写 Webconfig 连接字符串。我有服务器、用户名和密码的输入文本框。是否可以从这些文本框中读取?
最佳答案
这取决于您如何创建连接,但肯定这是可能的。
查看此站点,了解您要连接的数据库特有的连接字符串..
对于 SQL 连接字符串,您可以执行类似的操作
Imports System.Data.SqlClient
...
...
Dim conn As SqlConnection = New SqlConnection("Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;")
conn.Open
将要更改的位替换为文本框中的值
例如
Dim conn As SqlConnection = New SqlConnection("Data Source=" & txtServerAddr.Text & ";Initial Catalog=" & txtDBName.Text & ";User Id=" & txtUser.Text & ";Password=" & txtPassword.Text & ";")
编辑修改您的问题后
啊现在更有意义了。
好的,您现在有两种选择。如果您要连接的连接字符串数量有限(可能是 Live、Test、Live#2),那么将其他连接字符串添加到您的 web.config 中,然后在您输入时将它们作为下拉列表提供会更有意义您的网络应用程序。
您可以在此处阅读有关如何从 web.config 中提取命名连接字符串的更多信息。 Microsoft How to: Read Connection Strings from the Web.config File
如果您有无限数量的可能连接字符串,那么我会完全避免 web.config 并像我原来的答案一样动态构建您的连接字符串
添加
“在运行时编辑 web.config 不是一个好主意。请注意,您对 web.config 所做的任何更改都将导致应用程序在您的网络服务器上重新启动。”
关于asp.net - 如何在运行时重写 Web Config 连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2370657/