RavenDB をデータストアとして使用する MVC4 アプリケーションがあります。アプリケーションには、MVC/Web、ドメイン、データ、およびセキュリティ レイヤーがあります。
データベースを初期化し、DocumentStore にアクセスする必要があるカスタム メンバーシップとロール プロバイダーを作成しています。セキュリティ層からこれらのクラスを作成しており、シングルトン DocumentStore (アプリケーションで設定) を使用したいのですが、アクセス方法がわかりません。
その他、RavenDB のカスタム プロバイダーを作成する例として、Provider.Initialize() メソッド内で新しい DocumentStore インスタンスを作成していますが、これはサーバーごとに 1 つの DocumentStore を持つという規則に違反しているようです。
現在、Application_Start() で RavenDB DocumentStore のインスタンスを 1 つ作成しています。DocumentStore.Session(s) を処理する MVC/Web レイヤーに基本コントローラーがあります。
これを達成する方法はありますか?単純化するために、セキュリティ ロジックを MVC/Web レイヤーに移動する必要がありますか?