いくつかの項目を取得するための既存の LINQ クエリがあります。
var result = from foo in x.SomeThings
from bar in x.OtherThings
where foo.RefId == bar.RefId
select foo;
x は、次の 3 つのプロパティを含むオブジェクトです。
List<MyThing> SomeThings
List<MyThing> OtherThings
List<MyStuff> MyStuffs
MyThing でもあるプロパティが含まれています。
クラスの概要は次のとおりです。
public class X
{
public List<MyThing> SomeThings;
public List<MyThing> OtherThings;
public List<MyStuff> MyStuffs;
}
public class MyThing
{
public int RefId;
}
public class MyStuff
{
public MyThing TheThing;
public DateTime WhenHappened;
}
一致する RefId 値に基づいて、WhenHappened の最も古い値に基づいて、返された foo で並べ替えるにはどうすればよいですか?