.net c#将List集合实体转换成DataTable源码下载

版权:原创 更新时间:1年以上
[该文章底部包含文件资源,可根据自己情况,决定是否下载资源使用,时间>金钱,如有需要,立即查看资源]

.net c# 程序开发中,经常需要将集合转Datatable,方便后续处理

思路非常简单,只需要遍历属性,然后创建DataTable实体即可.

源码如下:

        public static DataTable CreateTable<T>(IList<T> list)
        {
            DataTable table = CreateTable<T>();
            Type entityType = typeof(T);
            System.Reflection.PropertyInfo[] plist = entityType.GetProperties();
            foreach (T item in list)
            {
                DataRow row = table.NewRow();
                for (int i = 0; i < plist.Length; i++)
                {
                    object[] atts = plist[i].GetCustomAttributes(false);
                    bool pignore = false;
                    for (int j = 0; j < atts.Length; j++) if (atts[j].ToString() == "nottablecolum") { pignore = true; break; }
                    if (pignore) continue;
                    object pvalue = plist[i].GetValue(item, null);
                    if (pvalue == null || ((pvalue is DateTime) && (DateTime)pvalue == DateTime.MinValue)) { pvalue = DBNull.Value; }
                    row[plist[i].Name] = pvalue;
                }
                table.Rows.Add(row);
            }
            return table;
        }

调用代码:

        private void zbtntest_Click(object sender, EventArgs e)
        {
            List<DataTest> list = new List<DataTest>();
            for (int i = 1; i <= 50; i++)
            {
                list.Add(new DataTest() { name = "名称" + i.ToString(), des = "描述" + i.ToString(), count = i + 100 });
            }
            DataTable tb = ModelConst.CreateTable(list);
            var fff = "";
        }

        public class DataTest
        {
            /// <summary>
            /// 名称
            /// </summary>
            public string name { get; set; }
            /// <summary>
            /// 描述
            /// </summary>
            public string des { get; set; }
            /// <summary>
            /// 数量
            /// </summary>
            [ModelConst.ShowName("数量")]
            public int count { get; set; }
        }

效果如下:


附件:下载该文件资源,减少时间成本(增值服务)
不商用,只限学习使用,使用后请删除
上传者拥有该资源完整版权,下载既表明已授权您可以进行报备商用,无报备或者使用后报备,视为侵权,报备后使用,为合法有效使用,报备方式,下载后,在下载列表,点击报备,填写使用场景即可
文件部分展示图(单击放大)
.net c#将List集合实体转换成DataTable源码下载.net c#将List集合实体转换成DataTable源码下载
留言
该资源可下载
File Source
.rar
180.65 KB
.net c#将List集合实体转换成DataTable源码下载.net c#将List集合实体转换成DataTable源码下载
最新结算
股权转让协议意向书模板
类型: .docx 金额: CNY 2.23¥ 状态: 待结算 详细>
股权转让协议意向书模板
类型: .docx 金额: CNY 0.28¥ 状态: 待结算 详细>
CSS3图片向上3D翻转渐隐消失特效
类型: .rar 金额: CNY 0.29¥ 状态: 待结算 详细>
CSS3图片向上3D翻转渐隐消失特效
类型: .rar 金额: CNY 2.31¥ 状态: 待结算 详细>
.net c# 将金额转人名币大写金额
类型: .rar 金额: CNY 2.39¥ 状态: 待结算 详细>
.net c# 将金额转人名币大写金额
类型: .rar 金额: CNY 0.3¥ 状态: 待结算 详细>
合伙退伙协议书范本模板
类型: .doc 金额: CNY 2.23¥ 状态: 待结算 详细>
合伙退伙协议书范本模板
类型: .doc 金额: CNY 0.28¥ 状态: 待结算 详细>
合伙退伙协议书范本模板
类型: .doc 金额: CNY 2.23¥ 状态: 待结算 详细>
合伙退伙协议书范本模板
类型: .doc 金额: CNY 0.28¥ 状态: 待结算 详细>
我们力求给您提供有用的文章,再此基础上,会附加营收资源,不做任何广告,让平台可以更好发展 若您发现您的权利被侵害,或使用了您的版权,请发邮件联系 sunlifel@foxmail.com ggbig觉得 : 不提供源码的文章不是好文章
合作伙伴
联系我们
  • QQ:21499807
  • 邮箱:sunlifel@foxmail.com
  • QQ扫一扫加QQ
    QQ扫一扫
Copyright 2023-2024 ggbig.com·皖ICP备2023004211号-1
打赏文章