2011-12-12 84 views
17

我似乎無法訪問我的C#winforms應用程序中的app.config數據庫連接字符串。使用C#winform中的app.config訪問數據庫連接字符串

的app.config代碼

<connectionStrings> 
     <add name="MyDBConnectionString" providerName="System.Data.SqlClient" 
      connectionString="Data Source=localhost;Initial Catalog=MySQLServerDB; Integrated Security=true" /> 
    </connectionStrings> 

C#代碼:

SqlConnection conn = new SqlConnection(); 
conn.ConnectionString = System.Configuration.ConfigurationSettings.AppSettings["MyDBConnectionString"];  

當我嘗試C#代碼,我得到一個消息:
警告1「System.Configuration.ConfigurationSettings.AppSettings '已過時:' 此方法已過時,已由System.Configuration替換!System.Configuration.ConfigurationManager.AppSettings'

然而,當我嘗試使用:

conn.ConnectionString = System.Configuration!System.Configuration.ConfigurationManager.AppSettings["MyDBConnectionString"]; 

我得到一個錯誤:只有分配,調用,遞增,遞減和新對象表達式可以用作聲明

回答

25

這就是你需要:

System.Configuration.ConfigurationManager.ConnectionStrings["MyDBConnectionString"].ConnectionString; 
7

使用ConfigurationManager而不是ConfigurationSettings。它有,你應該在connectionStrings部分連接字符串使用ConnectionStrings屬性:

ConfigurationManager.ConnectionStrings["MyDBConnectionString"].ConnectionString; 
5

您正在使用的ConnectionStrings收藏,不AppSettings的。

ConfigurationManager.ConnectionStrings["MyDbConnectionString"].ConnectionString; 
4

試試這個

ConfigurationManager.ConnectionStrings["MyDbConnectionString"].ConnectionString; 
4
using (SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["SQLConnection"].ToString())) 
{ 
....(your code here) ... 
} 
4
<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 

<appSettings> 

<add key="ConnectionString" value="Data Source=MY-PC;Initial Catalog=DB2013;User ID=sa;Password=MYSQL123" /> 

</appSettings> 

</configuration> 
using System.Configuration; 
using System.Data.SqlClient; 

namespace OnlineDelete_W2013 
{ 
public partial class CommodityEdit : Form 
{ 
    SqlConnection MyConnection = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"]); 

    public CommodityEdit() 
    { 
     InitializeComponent(); 

    } 

    private void button1_Click(object sender, EventArgs e) 
    { 
     try 
     { 
      MyConnection.Open(); 
     } 
     catch (Exception) 
     { 

      throw; 
     } 
2
SqlConnection conn = new SqlConnection(); 
conn.ConnectionString = ConfigurationManager 
    .ConnectionStrings["MyDBConnectionString"].ConnectionString; 
try 
{ 
    conn.Open();     
} 
catch (Exception) 
{ 
    throw;      
} 
相關問題