本文章主要介紹SqlHelper使用。
每個項目都要用到數據訪問層,我做的也不例外,但是我把數據訪問層做成獨立項目,沒有什麼太大的目的,數據訪問層,僅僅做數據訪問用,不包含任何邏輯。
為什麼要使用數據訪問層?
如果不使用數據訪問層,那麼你的代碼裡會出現很多SqlConnection、SqlCommand、SqlDataReader、Open、 Close……這些類和方法,而且代碼量很大,讓你不勝其煩,而且代碼寫起來,其實都是體力活,沒有技術含量。因此我們要把數據訪問層封裝起來,方便重用。微軟已經替我們做好了這個工作,那就是SqlHelper,下圖是SqlHelper的類關系圖:
下面介紹我的使用方法。
執行一個無返回值的存儲過程:
create proc p_Delete@id int
as
delete table1 where id=@id
這是一個刪除數據的存儲過程,調用該存儲過程只需要一句話:SqlHelper.ExecuteNonQuery (SqlHelper.conn, "p_Delete", id);,這裡的id是int類型,而不是SqlParameter類型。該調用是調用的public static int ExecuteNonQuery(string connectionString, string spName, params object[] parameterValues)方法。以此類推。返回一個DataSet類型:SqlHelper.ExecuteDataset (SqlHelper.conn, pro, 參數列表);參數也是直接傳遞,無需構造SqlParameter……好了,本文主要是介紹一個小技巧,就是params object[]的使用方法,讓高手見笑了