2012-10-15 23 views
1

林新手,我把我的數據庫連接類:如何解決我的連接類?在C#</p> <p>

public class Connection 
{ 
    public string SetConnection() 
    { 
     string connectionstring = "server=SURI-PC;database=cms;Integrated Security=True"; 
     return connectionstring; 
    } 
} 

然後,我把它在主類:

public static void Main(string[] args) 
{ 
    Connection conObject = new Connection(); 
    SqlConnection scon = new SqlConnection(conObject.SetConnection()); 
    String sql = "insert into category(cat_id, cat_name) values('C03', 'Browser')"; 
    SqlCommand cmd = new SqlCommand(sql, scon); 
    cmd.ExecuteNonQuery(); 
} 

但它不是工作。

如何創建一個連接類並在其他類中調用它?

請幫幫我!

感謝。

+1

我們展示你的代碼。 – Nasreddine

+0

請顯示您的代碼。 – besworland

+0

據我所知,你想封裝一個數據庫連接到類中,並注入其他類以重用它,請描述你要做什麼 – sll

回答

3

是的,像zenwalker說,沒有scon.Open(),你需要打開連接到數據庫。此外,最好的做法是使用一個使用塊,當你打開這樣

using(SqlConnection scon = new SqlConnection(conObject.SetConnection())) { 
    scon.Open(); 
    String sql = "insert into category(cat_id, cat_name) values('C03', 'Browser')"; 
    SqlCommand cmd = new SqlCommand(sql, scon); 
    cmd.ExecuteNonQuery(); 
} 

連接也看到here有關SqlConnection的更多信息。

+0

這是正確的方式來實現作者想要的東西,而不需要一個愚蠢的自定義類來重複已經完成的工作。 –

0

您可以創建類像

public class ConClass 
{ 
    public SqlConnection Connection() 
    { 
     SqlConnection con = new SqlConnection(@"Data Source=AHM-0149043-D;Integrated Security=True"); 
     return con; 
    } 
} 

然後,每當你想這樣稱呼它

ConClass c = new ConClass(); 
    SqlConnection s= c.Connection(); 
+0

我必須給這個-1票,因爲你沒有提到這種類型的事實是一個壞主意。 –

相關問題