DataRow[] 一个简单的筛选案例 ,没啥技术难度有手就行。

    已知 DataRow[] ucDataRow 中有100条数据 ,列为 ID ,NAME ,AGE,检查项,检查结果,诊断, 但是其中每一个检查项单独在ucDataRow中都是单独的一条 ,ID是相同,怎么把相同ID的人筛选出来呢

  [TestMethod]
        public void TestMethod1()
        {

            // 假设有一个名为ucDataRow的DataRow数组
            DataRow[] ucDataRow = GetSampleData(); // 获取示例数据

            // 使用GroupBy将相同ID的人分组
            IEnumerable<IGrouping<object, DataRow>> groupedRows = ucDataRow.GroupBy(row => row["ID"]);

            // 打印筛选结果
            Console.WriteLine("相同ID的人:");
            foreach (IGrouping<object, DataRow> group in groupedRows)
            {
                Console.WriteLine($"ID: {group.Key}");

                foreach (DataRow row in group)
                {
                    Console.WriteLine($"Name: {row["Name"]}, Age: {row["Age"]}, 检查项: {row["检查项"]}, 检查结果: {row["检查结果"]}, 诊断: {row["诊断"]}");
                }

                Console.WriteLine();
            }
        }

        // 获取示例数据
        static DataRow[] GetSampleData()
        {
            DataTable dataTable = new DataTable();
            dataTable.Columns.Add("ID");
            dataTable.Columns.Add("Name");
            dataTable.Columns.Add("Age");
            dataTable.Columns.Add("检查项");
            dataTable.Columns.Add("检查结果");
            dataTable.Columns.Add("诊断");

            // 添加示例行数据
            dataTable.Rows.Add("123", "John", "30", "检查项1", "结果1", "诊断1");
            dataTable.Rows.Add("456", "Alice", "25", "检查项2", "结果2", "诊断2");
            dataTable.Rows.Add("123", "Bob", "35", "检查项3", "结果3", "诊断3");
            dataTable.Rows.Add("789", "David", "40", "检查项4", "结果4", "诊断4");
            dataTable.Rows.Add("123", "Sarah", "28", "检查项5", "结果5", "诊断5");

            return dataTable.Select();
        }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值