私はGROUP BYと熱心な読み込みに問題があります。私は何をしているのか説明しようとしています。 は、私がイベントLinq/EF、Eagerの読み込みとGROUP BYの問題
のためのDataContext CTXを照会しているイベントクラスに持って次のプロパティ
string Description
DateTime Date
bool IsDeleted
Guid SubjectId
string Title
DateTime Created
Guid ForProjectId
Person TriggeredBy
List<Guid> Targets
ありmuttipleのイベントが同じSubjectIdであると私はユニークSubjectIdsとし、そのイベントを持つ終わるしたいと思いますグループ内で最新のものです。私は次のクエリで終わります。
var events = from x in
(from e in ctx.Events
.Include("TriggeredBy")
.Include("Targets")
group e by e.SubjectId
into g
select new
{
GroupId = g.Key,
EventsWithSameSubjectId = g,
}
)
select x.EventsWithSameSubjectId
.OrderByDescending(y => y.Created).FirstOrDefault();
クエリが正しくコンパイルされ、正しい結果セットが返されます。しかし、含まれているプロパティは常にnullです。私はこれがすべて含まプロパティとイベントを返す
var events = (from e in ctx.Events.OfType<DataNotificationEvent>()
.Include("TriggeredBy")
.Include("Targets")
select e).ToList();
.... eagorロードが正常に動作しているかどうかを確認するためにクエリを取り除く
。
これはLinq/EFの既知の問題/バグですか、このエラーを取り除く方法はありますか?
よろしく
ヴィンセントOttens
グループ化(および副選択と投影)と組み合わせると熱心な負荷に問題があります。この質問を見て:http://stackoverflow.com/questions/4474951/entity-framework-include-is-not-working/4475504#4475504答えの2つのリンクされた記事は、回避策を見つけるのに役立つかもしれません。 – Slauma