C# DATASET指定欄位做差集

  • 220
  • 0

C# DATASET指定欄位做差集

程式如下:

		//IEnumerable<DataRow> tempExcept = null;

            DataTable DT1 = FINDDT1();
            DataTable DT2 = IMPORTEXCEL();

            //找DataTable差集
            //要有相同的欄位名稱
            //找DataTable差集
            //如果兩個datatable中有部分欄位相同,可以使用Contains比較  
            var tempExcept = from r in DT2.AsEnumerable()
                             where
                             !(from rr in DT1.AsEnumerable() select rr.Field<string>("編號")).Contains(
                             r.Field<string>("編號"))
                             select r;


            //var tempExcept = DT2.AsEnumerable();

            if (tempExcept.Count() > 0)
            {
                //差集集合
                DataTable dt3 = tempExcept.CopyToDataTable();

                //do some thing
            }

 

自我LV~