2013-01-02 32 views
1

我用下面的代碼中的app.config如何給連接字符串中的app.config文件,以及如何調用它

<connectionStrings> 
<add name="ConnectionString" connectionString="Data Source=162.1.6.4;Initial Catalog=Followon_SP;Integrated Security=SSPI" 
    providerName="System.Data.SqlClient"/> 

和form.cs

struct st 
{ 

    public static SqlConnection con; 
}; 
public Mainform() 
    { 
     InitializeComponent();   
     st.con = new SqlConnection(ConfigurationManager.AppSettings["Connectionstring"].ToString()); 
    } 

但我在連接打開時出現以下錯誤,

+2

,其誤差凸起?? –

+0

未將對象引用設置爲對象的實例。此錯誤 – csura

回答

2

您需要用此代替:

public Mainform() 
{ 
    InitializeComponent();  

    // read out the .ConnectionString property - don't call .ToString() !! 
    string cs = ConfigurationManager.ConnectionStrings["Connectionstring"].ConnectionString; 
    st.con = new SqlConnection(cs); 
} 

使用ConfigurationManager.ConnectionStrings(不是ConfigurationManager.AppSettings),然後宣讀了.ConnectionString屬性,而不是要求它.ToString()連接字符串。

+0

仍然出現錯誤, – csura

+0

@csura:您需要使用'ConfigurationManager.COnnectionStrings [']而不是'.AppSettings' - 再次嘗試 –

+0

此錯誤,登錄失敗。登錄來自不受信任的域,不能與Windows身份驗證一起使用。 – csura

0

將新的SqlConnection(cs)設置爲您的結構類型con字段。像這樣使用它;

string cs = ConfigurationManager.AppSettings["Connectionstring"].ConnectionString; 
st.con = new SqlConnection(cs); 
0

你會好得多使用實體框架:http://msdn.microsoft.com/en-us/data/ef.aspx

添加一個新的數據模型和VS會照顧你的所有配置設置,只要你有正確的用戶名和密碼進入在嚮導中。也會使你的開發過程變得更加容易。

0

使用以下代碼讀取連接字符串:

System.Configuration.Configuration rootWebConfig = 
    System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("/MyWebSiteRoot"); 
System.Configuration.ConnectionStringSettings connString; 
if (rootWebConfig.ConnectionStrings.ConnectionStrings.Count > 0) { 
    connString = 
     rootWebConfig.ConnectionStrings.ConnectionStrings["NorthwindConnectionString"]; 
    if (connString != null) 
     Console.WriteLine("Northwind connection string = \"{0}\"", connString.ConnectionString); 
    else 
     Console.WriteLine("No Northwind connection string"); 
} 
相關問題