我有一个使用 RavenDB 作为数据存储的 MVC4 应用程序。该应用程序具有 MVC/Web、域、数据和安全层。
我正在编写需要初始化数据库和访问 DocumentStore 的自定义成员资格和角色提供程序。我正在从安全层编写这些类,并且想使用单例 DocumentStore(在应用程序中设置),但我不知道如何访问它。
其他,我看到为 RavenDB 编写自定义提供程序的示例在 Provider.Initialize() 方法中创建新的 DocumentStore 实例,但这似乎违反了每个服务器拥有一个 DocumentStore 的规则。
目前,我在 Application_Start() 中创建了 RavenDB DocumentStore 的单个实例。我在处理 DocumentStore.Session(s) 的 MVC/Web 层中有一个基本控制器。
有没有办法做到这一点?我应该将我的安全逻辑移动到 MVC/Web 层以简化事情吗?