如何在运行时重写Web Config连接字符串

时间:2010-03-03 11:13:44

标签: asp.net vb.net

如何在运行时重写Webconfig连接字符串。我有Server,UserName和Password的输入文本框。是否可以从这些文本框中读取?

1 个答案:

答案 0 :(得分:2)

这取决于您创建连接的方式,但确定可以。

查看此站点以获取特定于您要连接的数据库的连接字符串..

ConnectionStrings.com

对于SQL连接字符串,您可以执行类似

的操作
 Imports System.Data.SqlClient
 ...
 ...
 Dim conn As SqlConnection = New SqlConnection("Data Source=myServerAddress;Initial  Catalog=myDataBase;User Id=myUsername;Password=myPassword;")
 conn.Open

使用文本框中的值替换要更改的位

e.g

 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并像我原来的答案那样动态建立你的连接字符串

<强> ADDITION

“在运行时编辑web.config并不是一个好主意。要意识到您对web.config所做的任何更改都会导致应用程序在您的Web服务器上重新启动。”