1

多くの組織で共有されているデータベースがあります (マルチテナント シナリオ)。

承認されたユーザーが、そのような制約を毎回明示的にコーディングする必要なく、単一の組織のデータのみを表示できるようにしたいと考えています。

これを行うための LightSpeed の適切なアプローチはありますか?

4

2 に答える 2

3

考えられる解決策の 1 つは、テナントごとに個別のテーブルを用意することです。つまり、テーブルに何らかのテナント ID のプレフィックスを付けます。

たとえば、顧客テーブルがある場合、テナント名を前に付けることができます

Client1_Customer
Client2_Customer

Lightspeed には、DefaultNamingStrategyと呼ばれる命名戦略が組み込まれています。これは、 INamingStrategyの独自の実装に置き換えることができます。現在のテナントを識別し、対応するテーブル名を選択できるように、 GetTableNameを実装するだけです。

于 2012-04-23T02:04:46.003 に答える
1

QueryFilterAttributes と呼ばれる LightSpeed の優れた機能を発見しました。LightSpeed のネイティブのソフト削除のように、組織 ID をクエリに挿入できる組織クエリ フィルター属性を作成できます。

とても滑らかです。

于 2012-04-23T22:52:23.837 に答える