当前位置: 首页 > article >正文

c# DataTable 帮助类

public class DataTableHelper
    {
        #region DataTable转IList

        /// <summary>
        /// DataTable转IList集合
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="dataTable"></param>
        /// <returns></returns>
        public static IList<T> ToList<T>(DataTable dataTable) where T : class, new()
        {
            IList<T> list = new List<T>();// 定义集合
            if (dataTable != null)
            {
                foreach (DataRow dr in dataTable.Rows)
                {
                    T t = new T();
                    PropertyInfo[] propertys = t.GetType().GetProperties();// 获得此模型的公共属性
                    foreach (PropertyInfo pi in propertys)
                    {
                        var name = pi.Name;
                        if (dataTable.Columns.Contains(name))
                        {
                            if (!pi.CanWrite) continue;
                            object value = dr[name];
                            if (value != DBNull.Value)
                            {
                                pi.SetValue(t, value, null);
                            }
                        }
                    }
                    list.Add(t);
                }
            }
            return list;
        }
        #endregion
    }


http://www.kler.cn/a/232957.html

相关文章:

  • 服务器显卡和桌面pc显卡有什么不同
  • Python →爬虫实践
  • 微服务(二)
  • 《新智慧》期刊的征稿范围主要包括哪些方面?
  • 大语言模型:解锁自然语言处理的无限可能
  • 封装el-menu
  • 无人机在化工消防救援中的应用,消防无人机应用场景分析
  • 洛谷使用指南
  • 【GameFramework框架】四、GameFramework框架内置模块
  • 第6章 智能租房——前期准备
  • windows10安装配置nvm以达到切换nodejs的目的
  • vscode 无法远程连接waiting the server log
  • [leetcode] 32. 最长有效括号
  • 【Git】Windows下通过Docker安装GitLab
  • 计算机自顶向下 Wireshark labs——DNS
  • Arcgis使用过程中常见问题解决方法
  • ArcGIS学习(六)地理数据库
  • 恒创科技:怎么看云主机的性价比
  • rust语言tokio库底层原理解析
  • Linux查询指令
  • PneumoLLM:少样本大模型诊断尘肺病新方法
  • Android 13.0 系统framework修改低电量关机值为3%
  • Python HttpServer 之 简单快速搭建本地服务器,并且使用 requests 测试访问下载服务器文件
  • 医学图像隐私保护
  • OCP使用CLI创建和构建应用
  • vue3 之 商城项目—登陆