从IEnumerable获取一个清晰的ID列表
问题描述:
我有一个IEnumerable,我想要获取所有不同的MaterialID。我有代码工作,但我想知道是否有更好的方式使用LINQ。这里是我的代码:从IEnumerable获取一个清晰的ID列表<T>
private IEnumerable<int> GetDistinctMaterialIDs(IEnumerable<TankReading> tankReadings)
{
var distinctMaterialIDs = new List<int>();
foreach (var tankReading in tankReadings)
{
if (!distinctMaterialIDs.Contains(tankReading.MaterialID))
{
distinctMaterialIDs.Add(tankReading.MaterialID);
}
}
return distinctMaterialIDs;
}
任何帮助将不胜感激,因为我正在学习LINQ如何帮助我。
答
tankReadings.Select(o => o.MaterialID).Distinct();
Doh!我羞于承认...... – ChaosPandion 2010-08-03 17:04:31