明辉手游网中心:是一个免费提供流行视频软件教程、在线学习分享的学习平台!

linq教材 linq 在本地比较数据可以大大的提高系统的性能

[摘要]linq教材 linq 在本地比较数据可以大大的提高系统的性我们经常会遇到导入Excel到系统,但在导入之前需要检查Excel的内容,做法有好多种比较典型的有,先不做检查,把excel导入系统,在数据库中做检查,这样效率还可以,但是浪费服务器资源。另一种方式就是把数据库的数据读到本地,再在本地进行...

 linq教材 linq 在本地比较数据可以大大的提高系统的性

我们经常会遇到导入Excel到系统,但在导入之前需要检查Excel的内容,做法有好多种比较典型的有,先不做检查,把excel导入系统,在数据库中做检查,这样效率还可以,但是浪费服务器资源。
另一种方式就是把数据库的数据读到本地,再在本地进行比较,但是在本地的话需要循环,代码比较复杂,有了linq这些问题就解决了,可以把数据库的数据读到本地DataTable,Excel的内容也读到DataTable
可以像查询数据库一样去读两张表。
 
 
 
var query1 =
                                (from excel in dtExcelContent.AsEnumerable()
                                 where !(from objdt21 in dt21_1.AsEnumerable() select objdt21.Field<string>(dr["ColP_LookupFamily"].ToString() + "_Name").Trim()).Contains(excel.Field<string>(dr["Capt_CS"].ToString().Trim()))
                                 select new { RowID = excel.Field<string>("RowID").Trim(), Capt_CS = excel.Field<string>(dr["Capt_CS"].ToString().Trim()) }).ToList();
                        if (query1.Count > 0)
                        {
                            foreach (var strerr in query1)
                            {
                                UnListField unlist = new UnListField();
                                unlist.strRowID = strerr.RowID.ToString();
                                unlist.strField = strerr.Capt_CS;
                                unlist.strColumnName = dr["Capt_CS"].ToString();
                                _lsterr.Add(unlist);
                            }
                        }
 
     等价于:
Select * from
 dt21_1
where dr["ColP_LookupFamily"].ToString() + "_Name").Trim() not in ( Select dr["Capt_CS"].ToString().Trim() from dtExcelContent)

常见的网络操作系统有UNIX、Netware、Windows NT、Linux等,网络软件的漏洞及缺陷被利用,使网络遭到入侵和破坏。