내가 바보가 된 기분 필드로 그룹화 얻을,하지만 난 어떻게 9시 아침 식사 만 얻을 수있는 정답 상황Linq에는 별개의 요소는
public class Foo
{
public string Name { get; set; }
public string Time { get; set; }
public Foo(string name, string time)
{
Name = name;
Time = time;
}
}
var o = new List<Foo>
{
new Foo("Breakfast","9:00"),
new Foo("Lunch", "12:00"),
new Foo("Breakfast", "8:00")
};
을 찾기 위해 겉으로는 쉬운 당신의 도움이들 필요, 인정해야 : 00 및 점심 식사, 8시에 아침 식사는 포함되지 않습니까?
나는 그렇게 시작 :var a = o.GroupBy(x => x.Name);
그러나 그것은 당신에게 내가 너무 시간이 필요 단지 이름을 줄 것이다.
var a = o.GroupBy(x => x.Name)
.Select(g => g.First());
또는 당신은 DistinctBy
MoreLINQ에서 사용할 수 있습니다 :
"올바른"것을 고려할 때 좋은 점. 최신 버전은 확실하지 않지만 LINQ-to-EF 4.0에서는'OrderBy()'없이'First()'를 사용할 수 없습니다. 많은 의미. – dlev