C#进行数据筛选(一)

这里介绍数据筛选的第一种方式,不用过滤器,给新手看得

public DataTable SourceList(string Wmain, string OrderNo, string Process)
        {
            DataTable Src = HandleProc.SourceList(Wmain, OrderNo, Process);
            DataTable Dt = new DataTable();
            Dt = Src.Clone();
            List<string> ArrayList = new List<string>();
            if (Src.Rows.Count > 0)
            {
                for (int i = 0; i < Src.Rows.Count; i++)
                {
                    string StrSql = string.Format("select * from Table where Id='{0}' and State ='0'", Src.Rows[i][0]);
                    DataTable Ro = DBHelper.ExecuteQuery("SqlServer", StrSql);
                    if (Ro.Rows.Count == 0)
                    {
                        Dt.ImportRow(Src.Rows[i]);
                    }
                    else
                    {
                        continue;
                    }




                }

            }
            return Dt;

        }

当时考虑到要筛选出我需要的数据,并且这里的数据量还是一条以上,比如我去判断一个用户组里面,所有登录的人的信息

这里我先调一个存储过程把所有这个用户组的数据先取到DataTable里,然后进行条件筛选,再存到另外一个DataTable里面

这里为了保持两个DataTable一致,我就去克隆我取到的DataTable

DataTable Src = HandleProc.SourceList(Wmain, OrderNo, Process);
            DataTable Dt = new DataTable();
            Dt = Src.Clone();//这里克隆数据,不然会报错

记得从一个DataTable中取一部分数据到另外一个DataTable中必须进行克隆操作,否则会存不进去

符合筛选条件的可以放到另外一个DataTable中

这里本来我想放到List里面的,可以调用数据模型把数据一条条的放进去,这算第二种方式,放到后面记录吧,这里就写这么多了,可以参考一下

原文地址:https://www.cnblogs.com/yinxuejunfeng/p/8909740.html