是否可以根据内部集合顺序对LINQ连接操作的结果进行排序?
说我有两个系列:
var names = new[]{"John", "Mary", "David"};
var persons= new[]{ new Person{Name="John", Title"Prof"}, new Person{Name="Mary", Title="Accountant"}, new Person{Name="David", Title="Mechanic"}, new Person{Name="Peter", Title="Homeless"}}
如果我进行LINQ连接以获得如下的人员子集:
var taxPayers =
persons
.Join(names , p => p.Name, n => n, (p, n) => p)
.Select(f => new KeyValuePair<string, object>(f.Name, f.Title));
结果是根据人员阵列排序的。
使用LINQ可以根据名称的顺序订购taxPayers吗?或者这不是LINQable操作吗?
TIA。
答案 0 :(得分:2)
简单地反转连接应该有效。不要将名字加入人名,而是将人加入名字。