当前位置: 代码迷 >> C# >> LinQ 快速查询一个聚合里包含另一个集合数据
  详细解决方案

LinQ 快速查询一个聚合里包含另一个集合数据

热度:36   发布时间:2016-05-05 02:58:28.0
LinQ 快速查询一个集合里包含另一个集合数据
首先我有两个  (主)DataTable(字段 Name)
                          (子)DataTable(字段 Name)

我要做一件事情,主DataTable 里的Name 字段包含了 子集合中的Name 就留下

例如: 主DataTable 有数据 (连衣裙,连衣裙2014,连衣裙夏,连衣裙女,连衣裙男)
             子DataTable 有数据 (2014,女)


通过linq 查询 得到 数据  连衣裙2014,连衣裙女

相当于就是模糊查询,但是是整个集合模糊查询,所以遇到了这样儿的问题,请高手们帮我看看这个linq该怎么写,因为用linq 要快些,毕竟真实的主Table 数据是几万,子数据时上千
 
------解决思路----------------------
var q= dtMain.AsEnumerable().Where(x=>
 dt.AsEnumerable().Select(a=>a.Field<string>("Name")).Any(a=>x.Contains(a)))
   .CopyToDataTable();


数据已经加载到内存里处理了,几万条数据这样的级别,速度上不会慢
  相关解决方案