简介微软发布的Data Access Application Block

    技术2022-07-01  76

    为了方便的访问数据,微软自己封装了一个数据访问模块, 即Data Access Application Block. 通过它,我们用来访问数据库的编码量大大减少了. 这样的代码既有效率,又减少了出现错误的几率,其益处是可见的. 下面举两个例子比较一下

    1. 使用一般的sql语句进行控件绑定, 常规代码如下:

     1 // Create the connection and sql to be executed  2 string  strConnTxt  =   " Server=(local);Database=Northwind;Integrated Security=True; " ;  3 string  strSql  =   " select * from Products where categoryid = 1 "  4  5 // Create and open the connection object  6 SqlConnection objConn  =   new  SqlConnection(strConnTxt);  7 objConn.Open();  8  9 // Create the connamd object 10 SqlCommand objCmd  =   new  SqlCommand(strSql, objConn); 11 objCmd.CommandType  =  CommandType.Text; 12 13 // databind the datagrid by calling the ExecuteReader() method 14 DataGrid1.DataSource  =  objCmd.ExecuteReader(); 15 DataGrid1.DataBind(); 16 17 // close the connection 18 objConn.Close();

    如果用微软封装的Data Access Application Block, 其主要是sqlHelper类,代码如下:

    1 // Create the connection string and sql to be executed 2 string  strSql  =   " select * from products where categoryid = 1 " ; 3 string  strConnTxt  =   " Server=(local);Database=Northwind;Integrated Security=True; " ; 4 5 DataGrid1.DataSource  =  SqlHelper.ExecuteReader(strConnTxt, CommandType.Text, strSql); 6 DataGrid1.DataBind(); 2. 调用存储过程进行控件绑定常规代码如下:  1 // Open a connection to Northwind  2 SqlConnection objConn  =   new  SqlConnection( " Server=(local);Database=Northwind;Integrated Security=True; " );  3 ObjConn.Open();  4  5 // Create the stored procedure command object  6 SqlCommand objCmd  =   new  SqlCommand( " getProductsCategory " , objConn);  7 objCmd.CommandType  =  CommandType.StoredProcedure;  8  9 // create the parameter object for the stored procedure parameter 10 objCmd.Parameter.Add( " @CategoryID " , SqlDbType.Int); 11 objCmd.Parameter[ " @CategoryID " ].Value  =   1 ; 12 13 // create our DataAdapter and DataSet objects 14 SqlDataAdapter objDA  =   new  SqlDataAdapter(objCmd); 15 DataSet objDS  =   new  DataSet( " Category_Results " ); 16 17 // fill the dataset 18 objDA.Fill(objDS); 19 20 // databind the datagrid 21 DataGrid1.DataSource  =  objDS; 22 DataGrid1.DataBind(); 23 24 // close connection 25 objConn.Close(); 如果用微软封装的Data Access Application Block,其主要是sqlHelper类,代码如下: 1 string  strConn  =   " Server=(local);Database=Northwind;Integrated Security=True; " ; 2 DataSet objDS  =  SqlHelper.ExecuteDataset(strConn, CommandType.StoredProcedure,  " getProductsByCategory " new  SqlParameter( " @CategoryID " 1 )); 3 4 DataGrid1.DataSource  =  objDS; 5 DataGrid1.DataBind(); Data Access Application Block, 有其封装的源代码和帮助文件,我们也可以根据项目需求做一下改动再编译成dll引入项目,以给项目开发带来便利. 下载地址如下:http://download.microsoft.com/download/VisualStudioNET/daabref/RTM/NT5/EN-US/DataAccessApplicationBlock.msi


    最新回复(0)