2

マルチテナント環境用の OrchardCMS で機能「X」を開発しています。デフォルトのテナントに対してデータベースにシードされ、この機能「X」が有効になっているすべてのテナントで利用できるようにする必要がある一連のデータがあります。「X」機能を有効にする際に、すべてのテナントに対してこれらのデフォルトのデータ セットを複製したくありません。

異なるテナントのユーザーは、このデータをコピーして変更できる必要があります。これらのコピーされたデータは、テナントに制限されます。

このような動作はオーチャードで可能ですか?どうすればできますか?

4

2 に答える 2

2

IOrchardHost から取得した ShellContext を使用して、別のテナントのコンテキストでコードを実行することは比較的簡単です。http://orcharddojo.net/blog/advanced-orchard-accessing-other-tenants-services

于 2014-06-10T05:32:23.920 に答える
1

重要なコアの変更がないサーバー レベルではありません。オーチャード データ レイヤーはテナントに限定されます。データ共有はありません。マルチテナンシー機能は、1 つのアプリケーション内で複数のシェルを分離することにより、サイト密度を向上させるように設計されています。彼らの間に何らかの関係を築くためのものではありません。

あなたの最善の策は、デフォルトのテナントにいくつかの API をセットアップし (例: WebAPI を使用)、この方法で通信することです。

于 2013-07-23T17:05:24.020 に答える