动态连接字符串数据库c#
im始终使用这行代码进行连接:动态连接字符串数据库c#,c#,database,C#,Database,im始终使用这行代码进行连接: string ConnectString = "datasource = mysource; username = myusername; password = mypassword; database = mydatabasename"; 我这次尝试做的不是每次直接在脚本中写入服务器数据,而是想填充一些文本框。所以我试着做这样的事情 string ConnectString = "datasource = txtmysource.Text; username
string ConnectString = "datasource = mysource; username = myusername; password = mypassword; database = mydatabasename";
我这次尝试做的不是每次直接在脚本中写入服务器数据,而是想填充一些文本框。所以我试着做这样的事情
string ConnectString = "datasource = txtmysource.Text; username = txtmyusername.Text; password = txtmypassword.Text; database = txtmydatabasename.Text";
其中,txtmysource.Text/txtmyusername.Text/txtmypassword.Text/txtmydatabasename.Text是UI中textbox的名称。
但是我找不到写作的方法 您可能需要
DbConnectionStringBuilder
,理想情况下,它是适合您的RDBMS的正确版本-因此,对于SQL Server:
var builder=new-SqlConnectionStringBuilder
{
UserID=txtmyusername.Text,
DataSource=txtmysource.Text,
Password=txtmypassword.Text,
InitialCatalog=txtmydatabasename.Text,
};
var connectString=builder.ConnectionString;
这里最关键的一点是,如果(例如)任何元素包含保留/非普通字符,如空格、逗号、引号等,它将应用正确的字符转义等。可能使用如下插值字符串:
string ConnectString = $"datasource = {txtmysource.Text}; username = {txtmyusername.Text}; password = {txtmypassword.Text}; database = {txtmydatabasename.Text}";
在有人创建一个名为
a的数据库之前,这是可以接受的;b=“c
-是的,允许。谢谢您现在用solution@RaoufBessghaier在这种情况下,您应该将其标记为答案(绿色勾号)