Entity Frameworkのコードファースト(そうなし.edmx) は私が行うにはブール値でIsEnabledと基本エンティティクラスを持っているので、私が使用しているソフトの削除Entity Frameworkのコードファーストソフト
私が使用していますリポジトリパターンレイジーロードを削除します。リポジトリに対するすべてのクエリをIsEnabledでフィルタリングすることができます。
ただし、リポジトリを使用してIsEnabledというMyTypeを取得すると、Lazy Loading MyType.Itemsはアイテムを有効にできない可能性があります。
EF Fluentでテーブルをフィルタリングする方法を説明する方法はありますか?
更新:
私はDbset
public class UnitOfWork : DbContext
{
private IDbSet<MyObj> _MyObj;
public IDbSet<MyObj> MyObjs
{
get { return _MyObj ?? (_MyObj = base.Set<MyObj>()); }
}
}
を持っている場合、私はDbSetをフィルタリングするDbContextを伝えることができます任意の方法はありますか?
また、更新の後でも答えはいいです:もちろん、あなたは 'IQueryable MyFilteredObjs {get MyObjs.Where(m => m.IsEnabled);}のようなコンテキストクラスにプロパティを追加できます。 }} '。しかし、私はそれがあなたが望むものではないと思って、それは怠惰な、または熱心な読み込みには適用されません。 –
Slauma