`

List转换成DataTable

阅读更多
[size=xx-large]List转换成DataTable2009年03月25日 星期三 10:19List转换成DataTable
        /// <summary>
        /// 将泛类型集合List类转换成DataTable
        /// </summary>
        /// <param name="list">泛类型集合</param>
        /// <returns></returns>
        public static DataTable ListToDataTable<T>(List<T> entitys)
        {

            //检查实体集合不能为空
            if (entitys == null || entitys.Count < 1)
            {
                throw new Exception("需转换的集合为空");
            }

            //取出第一个实体的所有Propertie
            Type entityType = entitys[0].GetType();
            PropertyInfo[] entityProperties = entityType.GetProperties();

            //生成DataTable的structure
            //生产代码中,应将生成的DataTable结构Cache起来,此处略
            DataTable dt = new DataTable();
            for (int i = 0; i < entityProperties.Length; i++)
            {
                //dt.Columns.Add(entityProperties[i].Name, entityProperties[i].PropertyType);
                dt.Columns.Add(entityProperties[i].Name);
            }

            //将所有entity添加到DataTable中
            foreach (object entity in entitys)
            {
                //检查所有的的实体都为同一类型
                if (entity.GetType() != entityType)
                {
                    throw new Exception("要转换的集合元素类型不一致");
                }
                object[] entityValues = new object[entityProperties.Length];
                for (int i = 0; i < entityProperties.Length; i++)
                {
                    entityValues[i] = entityProperties[i].GetValue(entity, null);

                }
                dt.Rows.Add(entityValues);
            }
            return dt;
        }
[/size]
分享到:
评论

相关推荐

    list转换为dataTable

    通过以上内容可以看出,将List转换为DataTable不仅可以提高数据处理的灵活性,还可以方便地利用DataTable提供的强大功能来满足更多的业务需求。当然,在实际开发过程中还需要根据具体的应用场景来选择合适的数据结构...

    List(Of T)转换成DataTable.VB

    List(Of T)转换成DataTable

    c#将list类型转换成DataTable方法示例

    代码如下:///  /// 将List转换成DataTable ///  /// ”T”&gt; /// ”data”&gt; /// &lt;returns&gt;&lt;/returns&gt; public static DataTable ToDataTable(this IList&lt;T&gt; data) { PropertyDescriptorCollection prope

    C# 维数组转换为DataTable 的三个方法

    本文将介绍如何使用 C# 将多维数组转换成 `DataTable`,这对于操作 Excel 数据并将其转化为更易于处理的格式非常有用。 #### 方法一:单列数据转换 **描述**:此方法适用于只有一个字段(即列)的情况。它接收一个...

    DataTable 和List 相互转换

    在.NET框架中,将`DataTable`转换为`List&lt;T&gt;`通常涉及遍历`DataTable`的每一行,然后创建`T`类型的实例,并将每一列的值映射到相应的属性上。这个过程可以通过反射来实现,但效率较低。然而,随着C# 3.0的引入,LINQ...

    C#将DataTable转化为List&lt;T&gt;

    在C#开发中,将DataTable转换为List泛型集合是一个常见的需求,特别是在使用三层架构进行网站开发时,我们可能会从数据访问层获取一个DataTable对象,然后需要将其转换为一个强类型的List集合以便在业务逻辑层或表示...

    List转DataTable并导出为Excel

    在.NET开发环境中,经常需要处理各种数据集合,例如List对象,然后将其转化为表格格式,比如DataTable,以便于进一步的数据操作,比如导出为Excel文件。这个过程涉及到几个关键概念和技术,我们将逐一进行详解。 ...

    将IList转换成DataTable和DateSet的类

    在处理数据时,我们有时需要将IList类型的集合转换为DataTable或DataSet,因为这两者在数据库操作和数据绑定方面具有更强大的功能。下面将详细解释如何实现这种转换,以及在什么情况下需要进行这种转换。 首先,让...

    .net 中datatable与list泛型实体对象的互相转换

    非常方便的datatable类型与List泛型实体对象集合的互相转换,在面向对象的开发中,经常会用到的,如使用上不懂可以咨询我

    【ASP.NET编程知识】C#将DataTable转化为ListT.docx

    C#将DataTable转化为List 这篇文章主要讲述了如何将DataTable对象转换为List对象,使用反射机制来实现这个功能。下面是详细的知识点: 1. 使用反射机制来获取T对象的所有属性 在将DataTable对象转换为List对象时...

    .net 将datatable转换为实体类LIST

    将datatable转换为实体类LIST,运用了反射和泛型的技术

    把实体类数组转换为DataTable

    在C#编程中,将实体类数组转换为`DataTable`对象是一个常见的需求,尤其是在处理数据库操作、数据绑定或数据交换时。`DataTable`是.NET框架中的一个类,它提供了存储和操作表格数据的能力,而实体类则常用于表示业务...

    DataSet、List、Datatable转换为Json

    List转换成Json 对象转换为Json DataSet转换为Json DataTable转换为Json DataReader转换为Json

    C#将list和DataTable中的数据导出到Excel的功能

    要将List的数据导出到Excel,首先需要将List的数据转换成DataTable。这可以通过创建一个新的DataTable实例,然后遍历List,将每一条数据插入到DataTable的新行中来完成。例如,如果T是一个具有字段Name和Age的类,...

    C# DataTable 转换为 实体类对象实例

    } } //对应数据库表: //User //字段:ID、Name 那么你也许需要编写将DataTable 转换为实体对象的方法,便利DataTable.Rows 获得并填充。。 下面是我写的一个通用方法,分享+记录,便于日后直接Copy ~ 代码如下:...

    DataTable与实体类互相转换

    从实体类到DataTable的转换则相对简单,我们可以创建一个扩展方法,对每个实体实例调用`DataRow`的`LoadDataRow`方法来填充新创建的DataTable。如下所示: ```csharp public static DataTable ...

    IList转成DataTable和DateSet的类

    在处理数据时,我们可能需要将IList对象转换为更适用于数据操作的数据结构,如DataTable或DataSet。这两种数据结构是.NET中的重要组件,它们在处理数据库交互和数据绑定时特别有用。下面我们将详细探讨如何实现IList...

    DataTable转List

    利用反射和泛型 把Datatable转化为List 1

Global site tag (gtag.js) - Google Analytics