0

これは簡単に答えられるはずですが、実際にはわかりません。状況は次のとおりです。

Code First を使用してエンティティ フレームワーク 4.1 を ORM として使用します。かなり複雑なオブジェクト モデルを定義しましたが、これまでのところすべてうまく機能しています。

私のモデルの一部は次のようになります (わかりやすくするために、重要でない部分は省略しています)。

public class Tier1
{
public virtual ICollection<Tier2> t2 {get; set;}
}

public Class Tier2
{
public virtual Tier3 t3 {get; set;}
}

public Class Tier3
{
public bool isActive
}

に設定されたエンティティtier1のみを含む要素を取得するためにステートメントを作成するにはどうすればよいですか?tier3isActivetrue

context.Tier1s.Where(???)
4

1 に答える 1

4

Tier2にはTier3が1つしかないと思いますよね?あなたのコードではそのようです。もしそうなら、これを試してください:

var myTiers = context.Tier1s
    .Where(tier => tier.t2.Any(tier2 => tier2.t3.isActive))
    .ToList();
于 2012-04-13T13:56:09.413 に答える