[英]DistinctBy not working in C#/ Visual Studio 2012
我正在使用 DistinctBy 返回一个不同的列表。 它以某种方式不接受该方法。
List<LastLocation> tempLast = details.DistinctBy(x => x.deviceID).ToList();
几天前,当我使用 Visual Studio 2008 时,这是一个工作项目。我将项目迁移到 Framework 4.0,我目前正在使用 Visual Studio 2012,突然这开始引起问题。 下面是正在使用的命名空间列表和引用的程序集。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using COMMON;
using MySql.Data.MySqlClient;
using System.Data;
using System.Configuration;
using System.Xml.Linq;
我做错什么了吗?
好的,这有点晚了,但是您不需要安装任何NUGET
包来处理DistinctBy
请求。 只需添加以下代码行即可将其指向许多预安装的参考之一。
using Microsoft.Ajax.Utilities;
添加后,您可以简单地将.DistinctBy(d => d.Name)
放在任何返回的集合的末尾,类似于下面的示例。
var someVariableName = _repositoryName.GetListOfData().DistinctBy(d => d.Name).ToList();
DistincyBy
是通过MoreLinq提供的,而不是框架的一部分。 检查您是否安装并引用了 MoreLinq。
DistinctBy 不是 Linq 的一部分。 也许您缺少MoreLinq的 NuGet 包,或者您没有包含自己的扩展方法。
尝试这个:
details.Select(x => x.deviceID).Distinct().ToList();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.