从C#中的列表中删除重复项
我有一个数据读取器,可以从数据库中读取字符串。
我使用List来聚合从数据库读取的字符串,但我在此字符串中有重复项。
任何人都有快速方法从C#中的通用列表中删除重复项?
List<string> colorList = new List<string>();
public class Lists
{
static void Main()
{
List<string> colorList = new List<string>();
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
colorList.Add(variableFromDB.ToString());
foreach (string color in colorList)
{
Response.Write(color.ToString().Trim());
}
}
}
答案 0 :(得分:8)
colorList = colorList.Distinct().ToList;
答案 1 :(得分:1)
foreach (string color in colorList.Distinct())
答案 2 :(得分:0)
答案 3 :(得分:0)
IEnumerable<Foo> distinctList = sourceList.DistinctBy(x => x.FooName);
public static IEnumerable<TSource> DistinctBy<TSource, TKey>(
this IEnumerable<TSource> source,
Func<TSource, TKey> keySelector)
{
var knownKeys = new HashSet<TKey>();
return source.Where(element => knownKeys.Add(keySelector(element)));
}