一.使用存儲過程:
關於數據訪問應用程序塊的介紹在入門篇裡面已經說過了,這裡不再重復。下面我們來看看在數據訪問應用程序塊裡面使用存儲過程的方法:
1.不傳遞參數:不傳遞參數時值需要指定存儲過程的名稱,已經命令的類型即可。
1/**//// <summary>
2 /// 執行存儲過程(1)——不傳遞參數(NoPara)
3 /// </summary>
4 private void FormatDataBySp1()
5 {
6 /**////創建數據庫實例
7 Database db = DatabaseFactory.CreateDatabase("NorthWind");
8
9 /**////傳遞參數
10 DBCommandWrapper dbc = db.GetStoredProcCommandWrapper("GetProductsList");
11
12 /**////執行存儲過程
13 DataSet ds = db.ExecuteDataSet(dbc);
14
15 /**////綁定數據
16 DataGrid1.DataSource = ds.Tables[0];
17 DataGrid1.DataBind();
18 }
2.傳遞輸入參數:需要注意的是在增加參數時是AddInParameter。
1/**//// <summary>
2 /// 執行存儲過程(2)——傳遞輸入參數(Input)
3 /// </summary>
4 private void FormatDataBySp2()
5 {
6 /**////創建數據庫實例
7 Database db = DatabaseFactory.CreateDatabase("NorthWind");
8
9 /**////傳遞參數
10 DBCommandWrapper dbc = db.GetStoredProcCommandWrapper("CustOrdersDetail");
11 dbc.AddInParameter("@OrderID",System.Data.DbType.Int32,10248);
12
13 /**////執行存儲過程
14 DataSet ds = db.ExecuteDataSet(dbc);
15
16 /**////綁定數據
17 DataGrid1.DataSource = ds.Tables[0];
18 DataGrid1.DataBind();
19 }
3.傳遞輸出參數:需要注意的是在增加參數時是AddOutParameter。
1/**//// <summary>
2 /// 執行存儲過程(3)——傳遞輸出參數(Output)
3 /// </summary>
4 private void FormatDataBySp3()
5 {
6 /**////創建數據庫實例
7 Database db = DatabaseFactory.CreateDatabase("NorthWind");
8
9 /**////傳遞參數
10 DBCommandWrapper dbc = db.GetStoredProcCommandWrapper("GetProductDetails");
11
12 dbc.AddInParameter("@ProductID",System.Data.DbType.Int32,12);
13 dbc.AddOutParameter("@ProductName",System.Data.DbType.String,50); //輸出
14
15 /**////執行存儲過程
16 db.ExecuteNonQuery(dbc);
17
18 string result = dbc.GetParameterValue("@ProductName").ToString(); //得到輸出參數的值
19 }
二.使用事務:在企業庫數據訪問應用程序塊裡面,對事務提供了很好的支持,具體的使用方法在程序裡面有注釋,這裡就不多說了。
1/**//// <summary>
2 /// 利用事務更改數據
3 /// </summary>
4 private void ExecuteUseTran()
5 {
6 /**////創建數據庫實例
7 Database db = DatabaseFactory.CreateDatabase("NorthWind");
8
9 using(IDbConnection Idbconn = db.GetConnection())
10 {
11 /**////打開連接
12 Idbconn.Open();
13
14 /**////創建事務
15 IDbTransaction Idbtran = Idbconn.BeginTransaction();
16
17 try
18 {
19 /**////執行兩個存儲過程
20 db.ExecuteNonQuery(CommandType.StoredProcedure,"InserOrders");
21 db.ExecuteDataSet(CommandType.StoredProcedure,"UpdateProducts");
22
23 /**////執行完成後提交事務
24 Idbtran.Commit();
25 }
26 catch
27 {
28 /**////回滾事務
29 Idbtran.Rollback();
30 }
31 finally
32 {
33 /**////關閉連接
34 Idbconn.Close();
35 }
36 }
37
38 }
三.加密連接字符串:
1.創建一個加密的Stored Provider:
2.創建新的加密算法:
3.選擇加密算法:
4.創建加密密鑰:
5.保存加密密鑰的保存文件,該文件要小心保存:
6.指定加密的部分:
這樣我們看到,在配置文件裡面的內容變成了亂碼。
總結:關於數據訪問應用程序塊的進階篇就寫到這裡了,希望對初學企業庫的朋友有所幫助