我有下面的列表和查询表达式来获取不同的列表。
List<LinqTest> myList = new List<LinqTest>();
myList.Add(new LinqTest() { id = 1, value = "a" });
myList.Add(new LinqTest() { id = 1, value = "b" });
myList.Add(new LinqTest() { id = 2, value = "c" });
myList.Select(m => new { m.id}).Distinct().ToList();
我已经引用了下面的 SO 链接 link对于代码。即使在使用 distinct() 之后,我也会得到 3 条具有重复值的记录。 可能是什么原因?
最佳答案
您在调试时看到的 3 条记录是您现有的列表。我认为您错过的只是一项作业。
List<LinqTest> myList = new List<LinqTest>();
myList.Add(new LinqTest() { id = 1, value = "a" });
myList.Add(new LinqTest() { id = 1, value = "b" });
myList.Add(new LinqTest() { id = 2, value = "c" });
// not sure why new {m.id} was used in this context
List<int> distinctList = myList.Select(m => m.id).Distinct().ToList();
关于c# - 在 LINQ-C# 中不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44253528/