关键词搜索

源码搜索 ×
×

DataReader转DataSet方法

发布2015-01-24浏览6235次

详情内容

  1. public DataSet ConvertDataReaderToDataSet(SqlDataReader reader)
  2. {
  3. DataSet dataSet = new DataSet();
  4. do
  5. {
  6. // Create new data table
  7. DataTable schemaTable = reader.GetSchemaTable();
  8. DataTable dataTable = new DataTable();
  9. if (schemaTable != null)
  10. {
  11. // A query returning records was executed
  12. for (int i = 0; i < schemaTable.Rows.Count; i++)
  13. {
  14. DataRow dataRow = schemaTable.Rows[i];
  15. // Create a column name that is unique in the data table
  16. string columnName = (string)dataRow["ColumnName"]; //+ " // Add the column definition to the data table
  17. DataColumn column = new DataColumn(columnName, (Type)dataRow["DataType"]);
  18. dataTable.Columns.Add(column);
  19. }
  20. dataSet.Tables.Add(dataTable);
  21. // Fill the data table we just created
  22. while (reader.Read())
  23. {
  24. DataRow dataRow = dataTable.NewRow();
  25. for (int i = 0; i < reader.FieldCount; i++)
  26. {
  27. dataRow[i] = reader.GetValue(i);
  28. }
  29. dataTable.Rows.Add(dataRow);
  30. }
  31. }
  32. else
  33. {
  34. // No records were returned
  35. DataColumn column = new DataColumn("RowsAffected");
  36. dataTable.Columns.Add(column);
  37. dataSet.Tables.Add(dataTable);
  38. DataRow dataRow = dataTable.NewRow();
  39. dataRow[0] = reader.RecordsAffected;
  40. dataTable.Rows.Add(dataRow);
  41. }
  42. }
  43. while (reader.NextResult());
  44. return dataSet;
  45. }


原文地址:http://blog.csdn.net/windok2004/article/detailshttps://cdn.jxasp.com:9143/image/2248874

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载