zoukankan      html  css  js  c++  java
  • IList(T)转换DataSet

    using System.Data;
    using System.Collections.Generic;
     
    #region Convert IList<T> to DataSet
     
    /// <summary>
    /// Converts to data set.
    /// </summary>
    /// <typeparam name="T"></typeparam>
    /// <param name="list">The list.</param>
    /// <returns></returns>
    public static DataSet ConvertToDataSet<T>(IList<T> list)
    {
        if (list == null || list.Count <= 0)
        {
            return null;
        }
     
        DataSet ds = new DataSet();
        DataTable dt = new DataTable(typeof(T).Name);
        DataColumn column;
        DataRow row;
     
        System.Reflection.PropertyInfo[] myPropertyInfo = typeof(T).GetProperties(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance);
     
        foreach (T t in list)
        {
            if (t == null)
            {
                continue;
            }
     
            row = dt.NewRow();
     
            for (int i = 0, j = myPropertyInfo.Length; i < j; i++)
            {
                System.Reflection.PropertyInfo pi = myPropertyInfo[i];
     
                string name = pi.Name;
     
                if (dt.Columns[name] == null)
                {
                    column = new DataColumn(name, pi.PropertyType);
                    dt.Columns.Add(column);
                }
     
                row[name] = pi.GetValue(t, null);
            }
     
            dt.Rows.Add(row);
        }
     
        ds.Tables.Add(dt);
     
        return ds;
    }
     
    #endregion
  • 相关阅读:
    [GEF]实现模板功能
    一篇WTP文章
    写代码的代码:JET
    投票选择eclipse.org的新界面
    在SWT里显示AWT对象
    Plugin.xml > Manifest.mf
    关于本体编程的实现
    一个用OWLS组装Web服务的例子
    感受Ruby on Rails
    通过OCP考试
  • 原文地址:https://www.cnblogs.com/Mainz/p/1367890.html
Copyright © 2011-2022 走看看