6

共有データベースと共有スキーマアプローチを使用してマルチテナントアプリケーションを構築しています。したがって、アプローチに従って、各テーブルに「Tenant_Id」列があります。したがって、すべてのクエリにwhere句を自動的に付加する方法はありますか...

4

1 に答える 1

5

のラッパーを使用してこれを実現しDbContext、エンティティの各コレクションを where 句でオーバーライドします。

public class WrapperContext : YourDBContext
{

  public override DbSet<YourEntitity> YourEntities
  {
    get
    {
      return base.YourEntities.Where(t => t.Tenant_Id == someId);
    }
    set
    {
       base.YourEntities = value;
    }
  }      
}
于 2012-05-20T12:26:12.937 に答える