熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

DataTable轉換成泛型列表集合

2013-11-13 09:52:22  來源: .NET編程 
    /// <summary>
   
    /// 將Datatable轉換為泛型列表對象
   
    /// </summary>
   
    /// <typeparam name=T>泛型T的數據類型</typeparam>
   
    /// <param name=dataTable>待轉換的DataTable對象</param>
   
    /// <returns>目標泛型列表對象</returns>
   
    protected List<T> DataTableToList<T>(DataTable dataTable)
   
    {
   
    List<T> list = new List<T>()
   
    Type targetType=typeof(T)
   
    PropertyInfo[] allPropertyArray = targetTypeGetProperties()
   
    foreach (DataRow rowElement in dataTableRows)
   
    {
   
    T element=ActivatorCreateInstance<T>()
   
    foreach (DataColumn columnElement in dataTableColumns)
   
    {
   
    foreach (PropertyInfo property in allPropertyArray)
   
    {
   
    if(propertyNameEquals(columnElementColumnName))
   
    {
   
    if (rowElement[columnElementColumnName] == DBNullValue)
   
    {
   
    propertySetValue(element null null)
   
    }
   
    else
   
    {
   
    propertySetValue(element rowElement
   
    [columnElementColumnName] null)
   
    }
   
    }
   
    }
   
    }
   
    listAdd(element)
   
    }
   
    return list;
   
    }
From:http://tw.wingwit.com/Article/program/net/201311/11812.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.