现在的位置: 首页 > 综合 > 正文

Microsoft数据访问应用块 Data Acess Application Block V2 (2) :返回多表结果到同一个DataSet中

2012年10月22日 ⁄ 综合 ⁄ 共 2244字 ⁄ 字号 评论关闭

如果要使用SqlHelper执行多个SqlCommand并将结果填到同一个DataSet的多个表中,除了在上一篇文章介绍过的使用 ExecuteDataset这个函数以外,还可以使用另一个功能强大的函数:FillDataSet,并且这个方法比ExecuteDataSet更为灵活,比如,您可以指定填充的表的名字,可以在多表之间建立TableRelation,等等。

下面给出一段示例代码:

   DataSet ds=new DataSet ();
   SqlHelper.FillDataset (con,CommandType.Text ,"select * from Customers",ds,new string []{"Customers"});
   dataGrid1.DataSource =ds.Tables ["Customers"];
   SqlHelper.FillDataset (con,CommandType.Text ,"select * from Orders",ds,new string []{"Orders"});
   dataGrid2.DataSource =ds.Tables ["Orders"];

下面是FillDataSet的签名描述:

Executes a command by using a connection string

[C#] FillDataset(string connectionString, CommandType commandType,

         string commandText, DataSet dataset, string[] tableNames)

Executes a command by using a connection string and an array of SqlParameters

[C#] FillDataset(string connectionString, CommandType commandType,

            string commandText, DataSet dataSet, string[] tableNames,

            params SqlParameter[] commandParameters)

Executes a stored procedure by using a connection string

 [C#] FillDataset(string connectionString, string spName, DataSet dataSet,

         string[] tableNames, params object[] parameterValues)

  Executes a command by using a SqlConnection object

  [C#] FillDataset(SqlConnection connection, CommandType commandType,

         string commandText, DataSet dataSet, string[] tableNames)

 Executes a command by using a SqlConnection and an array of SqlParameters

[C#] FillDataset(SqlConnection connection, CommandType commandType,

         string commandText, DataSet dataSet, string[] tableNames, 

         params SqlParameter[] commandParameters)

 Executes a stored procedure by using a SqlConnection object

 [C#] FillDataset(SqlConnection connection, string spName,

         DataSet dataSet, string[] tableNames, params object[] parameterValues)

 Executes a command by using a SqlTransaction

  [C#] FillDataset(SqlTransaction transaction, CommandType commandType,

         string commandText, DataSet dataSet, string[] tableNames)

  Executes a command by using a SqlTransaction and SqlParameters

 [C#] FillDataset(SqlTransaction transaction, CommandType commandType,

         string commandText, DataSet dataSet, string[] tableNames,

         params SqlParameter[] commandParameters)

 Executes a stored procedure by using a SqlTransaction

 [C#] FillDataset(SqlTransaction transaction,

         string spName, DataSet dataSet, string[] tableNames,

         params object[] parameterValues)

抱歉!评论已关闭.