将RavenDB作为嵌入式文档库运行并访问RavenDB Management Studio

将RavenDB作为嵌入式文档库运行并访问RavenDB Management Studio,ravendb,ravendb-studio,Ravendb,Ravendb Studio,我正在玩一个嵌入式RavenDB=>RavenDB embedded.1.0.499软件包,该软件包是通过Visual Studio 2010中的NuGet安装的。在阅读了这篇优秀的MSDN文章后,我开始在当前项目中使用它: 现在我想访问(Web UI) 我遵循了这里描述的步骤:在这里,但我没有抓住要点 这是我用来初始化DocumentStore的代码: _documentStore = new EmbeddableDocumentStore {

我正在玩一个嵌入式RavenDB=>
RavenDB embedded.1.0.499
软件包,该软件包是通过Visual Studio 2010中的NuGet安装的。在阅读了这篇优秀的MSDN文章后,我开始在当前项目中使用它:

现在我想访问(Web UI)

我遵循了这里描述的步骤:在这里,但我没有抓住要点

这是我用来初始化
DocumentStore
的代码:

_documentStore = new EmbeddableDocumentStore
            {
                ConnectionStringName = "RavenDB",
                UseEmbeddedHttpServer = true
            };
这是
Web.config
中的
ConnectionString

<add name="RavenDB" connectionString="DataDir = ~\App_Data\Database" />
但是上面的代码似乎过时了,因为我没有
RavenDbHttpServer
documentStore.Configuration
documentStore.DocumentDatabase
。我设法找到了
Raven.Database.Server.HttpServer
,但是
\u documentStore
中缺少其他对象

因此,问题是:

如何点击Web UI以可视化嵌入式数据库文档?我应该在浏览器地址栏中输入什么URL

任何建议都将不胜感激

编辑:我找到了一种让它工作的方法。正如我在博客文章中所描述的,这可能不是最好的方法,但确实有效:

注意:上述方法的一个缺点是,我无法访问应用程序中的数据库,因为一旦服务器打开数据库,它就会被锁定。这样,我必须停止服务器,然后在浏览器中重新加载我的应用程序


我希望RavenDB的大师们有一个更好/正确的方法。。。请告诉我们。

我从来都不需要手动运行服务器才能访问management studio。在你的问题中,我通常只做几个没有提到的步骤:

// Add the following line prior to calling documentStore.Initialize()
Raven.Database.Server.NonAdminHttp.EnsureCanListenToWhenInNonAdminContext(8080);
Raven.Studio.xap
复制到我的web项目的根文件夹中


当我的web应用程序运行时,RavenDB Management Studio就可以访问了。

OMG:这太奇怪了。。。我试过了,但一开始不起作用。现在,我甚至没有添加
ensurecanlistentowhennonadminincontext
,它就可以正常工作了。想想看。我想我在第一次尝试时在8080端口上运行了另一个服务。。。谢谢你,约翰!这是可行的,但是如果我调试一个单元测试,它会停止HTTP服务器的执行,所以除非我不调试,否则我不能使用它,这意味着我不能调试我的测试,也不能查看studio,这意味着这是无用的。有没有办法避免这种情况?
// Add the following line prior to calling documentStore.Initialize()
Raven.Database.Server.NonAdminHttp.EnsureCanListenToWhenInNonAdminContext(8080);