c# - DataSet To String

来源:互联网 发布:fanuc数控系统编程视频 编辑:程序博客网 时间:2024/06/13 09:34

有些时候,真想看看 DataSet 里都有些什么表, 每个表里有多少列, 每行都是什么数据。

但是每次我们不得不 不厌其烦的定位到某表,某行,某列,这太麻烦了。

下面的代码解决这个问题:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Data;namespace YourNamespace{    public static class Extentions    {        public static string ToString2(this DataSet ds)        {            StringBuilder sb = new StringBuilder();            foreach (var table in ds.Tables)            {                DataTable tbl = table as DataTable;                sb.AppendLine();                sb.AppendLine("------Table:" + tbl.TableName + "------");                foreach (var column in tbl.Columns)                {                    DataColumn col = column as DataColumn;                    sb.Append(col.ColumnName + "    ");                }                sb.AppendLine();                foreach (var row in tbl.Rows)                {                    DataRow dr = row as DataRow;                    for (int i = 0; i < dr.ItemArray.Count(); i++)                    {                        sb.Append(dr.ItemArray[i].ToString() + "    ");                    }                    sb.AppendLine();                }                sb.AppendLine();            }            return sb.ToString();        }    }}


请将代码里 YourNamespace 替换成您DataSet对象所在的命名空间,使其能够访问到这个方法。

请注意参数中的 this, 说明这是一个扩展方法,关于扩展方法,请Google之。使用扩展方法,我们用的时候就很简单了。

 

     // Replace with your DataSet here.            DataSet ds = new DataSet();            // Output to string.            string dataSetContent = ds.ToString2();

Enjoy it.

原创粉丝点击