2010-11-23 92 views
8

我有一個需要連接到SQL Server的表單,我有一個下拉菜單用於選擇數據庫列表並執行像主鍵檢查等操作。 但是現在我的連接字符串看起來是這樣的:我們可以在app.config文件中聲明變量

SqlConnection sConnection = new SqlConnection("Server=192.168.10.3;DataBase=GoalPlanNew;User Id=gp;Password=gp"); 

但除了從給定的數據庫,我需要把它的變量,這樣我可以把它連接到我從下拉列表中選擇數據庫。

你們能幫我嗎?

回答

22

嗯,你可以聲明變量,如這

<appSettings> 
    <add key="SmtpServerHost" value="********" /> 
    <add key="SmtpServerPort" value="25" /> 
    <add key="SmtpServerUserName" value="******" /> 
    <add key="SmtpServerPassword" value="*****" /> 
</appSettings> 

和念想

string smtpHost = ConfigurationManager.AppSettings["SmtpServerHost"]; 
int smtpPort = Convert.ToInt32(ConfigurationManager.AppSettings["SmtpServerHost"]); 
+0

會看重什麼包含在這裏? – Srivastava 2010-11-23 14:21:13

1

您可以在app.config配置中使用connectionStrings標記。您可以根據需要添加儘可能多的密鑰(併爲每個密鑰分配一個密鑰),然後檢索它們

示例app.config xml(將provider名稱設置爲有效的提供程序,例如System.Data.SqlClient以及適當的連接字符串):

<?xml version='1.0' encoding='utf-8'?> 
    <configuration> 
    <connectionStrings> 
     <clear /> 
     <add name="firstDb" 
     providerName="System.Data.ProviderName" 
     connectionString="Valid Connection String;" /> 
     <add name="secondDb" 
     providerName="System.Data.ProviderName" 
     connectionString="Valid Connection String;" /> 
    </connectionStrings> 
    </configuration> 

上讓他們和上市他們(在你的情況,你將創建一個下拉列表中相應的項目和設定值)例如:

ConnectionStringSettingsCollection settings = 
      ConfigurationManager.ConnectionStrings; 

     if (settings != null) 
     { 
      foreach(ConnectionStringSettings cs in settings) 
      { 
       Console.WriteLine(cs.Name); 
       Console.WriteLine(cs.ProviderName); 
       Console.WriteLine(cs.ConnectionString); 
      } 
     } 
0

你可以在使用AppSettings部分。閱讀here爲例。

2

我認爲他想 「半不變」:

的Web.Config

<?xml version='1.0' encoding='utf-8'?> 
<configuration> 
    <connectionStrings> 
     <add name="YourName" providerName="System.Data.ProviderName" connectionString="Data Source={0}; Initial Catalog=myDataBase; User Id=myUsername; Password=myPassword;" /> 
    </connectionStrings> 
</configuration> 

CS文件

String Servername = "Test"; 
String ConnectionString = String.Format(ConfigurationManager.ConnectionStrings["YourName"].ConnectionString, ServerName); 
相關問題