var listOne = new string[] { "dog", "cat", "car", "apple"};
var listTwo = new string[] { "car", "apple"};
我需要的是按照 listTwo 中的项目顺序(如果存在)对 listOne 进行排序。所以新列表将按以下顺序排列:
“汽车”、“苹果”、“狗”、“猫”
我想在 LINQ 中执行此操作并已尝试过;
var newList = from l1 in listOne
join l2 in listTwo on l1 equals l2 in temp
from nl temp.DefaultIfEmpty()
select nl;
但它返回 null,所以显然我的 Linq-Fu 很弱。任何建议表示赞赏。
您需要 listTwo 中位于 listOne 中的所有项目,然后是 listOne 中的剩余项目吗?
var results = listTwo.Intersect(listOne).Union(listOne);
foreach (string r in results)
{
Console.WriteLine(r);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)