集运算
集运算包含Distinct,Except,Intersect,Union运算,得到的结果与Linq的一致:
//去重结果
var distinctResult = context.Beans.Distinct().ToList();
Console.WriteLine("RunResult:");
foreach (var item in distinctResult) Console.WriteLine($"{item}");
得到的结果是20个对象的集合。
//两个集合
var list = context.Beans.Where(p => p.Bool).ToArray();
var exceptResult = context.Beans.Except(list).ToList();
Console.WriteLine("RunResult:");
foreach (var item in exceptResult) Console.WriteLine($"{item}");
得到的结果是10个Bool为False的对象。
//两个集合
var list = context.Beans.Where(p => p.Bool).ToArray();
var intersectResult = context.Beans.Intersect(list).ToList();
Console.WriteLine("RunResult:");
foreach (var item in intersectResult) Console.WriteLine($"{item}");
得到的结果是10个Bool为True的对象。
//两个集合
var list = context.Beans.Where(p => p.Bool).ToList();
var unionResult = context.Beans.Where(p => p.Bool == false).Union(list).ToList();
Console.WriteLine("RunResult:");
foreach (var item in unionResult) Console.WriteLine($"{item}");
得到的结果是20个对象,其中前Bool为True的后10个为False。