0

フォーム認証と単一の階層エンティティを使用して MVC3 アプリケーションを構築しています。エンティティには、他のいくつかのオブジェクトを含む「ルート」として Region オブジェクトがあります。次のようになります。

Region->Language->objectA->objectB
Region->Application->….

各ユーザー (管理者を除く) は、単一のリージョンに関連付けられています。ユーザーの地域に基づいて、エンティティに読み込まれるデータを制限したいと思います。私はEFにあまり慣れていません。これは適切ですか、それともより良いアプローチがありますか? 最良のアプローチをどのように実装しますか

4

1 に答える 1

1

Entity Framework 経由で返されたデータを確実にフィルター処理できます。コードは次のようになります。

using (MyContext ctx = new MyContext())
{
    var filtered = (from r in ctx.Regions where SOME_CONDITIONS select r);
    // Do stuff with filtered (which is an IEnumerable<Region>)
}

Include関連するオブジェクトをロードするために を使用する必要があるかもしれないことに注意してください。

ctx.Regions.Include("Language").Include("Application")

http://msdn.microsoft.com/en-us/library/bb896272.aspxを参照してください

于 2012-07-04T17:18:20.443 に答える