簡體   English   中英

動態連接字符串數據庫c#

[英]Dynamic connection string database c#

我總是使用這行代碼進行連接:

 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 中文本框的名稱。 但我找不到寫的方式來做到這一點。

您可能需要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}";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM