我正在构建一个ASP.NET MVC站点 . 我想使用RavenDb(www.ravendb.net) - 嵌入式版本 .
我的问题是我也希望能够访问“RavenDb admin”工具,所以查看数据库,测试查询等 .
通常,当您在“服务器”模式下运行RavenDb时,您可以通过以下方式访问此“RavenDb admin”:localhost:8080
如上所述,我希望我的数据库运行嵌入式,因此它作为我的ASP.NET MVC站点的一部分运行,因此存在于承载我的ASP.NET MVC的IIS Express中 .
我发现了这个:http://ravendb.net/faq/embedded-with-http
它告诉我使用属性UseEmbeddedHttpServer = true初始化我的数据存储区 .
var documentStore = new EmbeddableDocumentStore
{
DataDirectory = "Data",
UseEmbeddedHttpServer = true
};
我已经这样做了,但是如何访问“RavenDb admin”部分呢? localhost:8080无法正常工作,因为我的网站运行就像localhost:49833
可能是我错过了什么,但我已经做了很多谷歌搜索,仍然找不到答案 .
提前致谢 :)
3 回答
以管理员身份启动Visual Studio 2010 - 非常重要 . 然后确保Raven.Studio.xap位于您网站的根文件夹中 .
现在,在ISS Express中启动站点后,您可以通过http://localhost:8080/访问RavenDB的管理部分
重要的是你实际上“开始”网站,通过加载网页或其他类似的网页,因此调用Application_Start方法操作系统 - 否则RavenDB将无法启动 .
您当然可以在localhost:8080上访问RavenDB - 它运行自己的http服务器(有自己的端口),与IIS无关 . 因此,如果您在控制台应用程序,Windows服务或IIS中托管RavenDB,那么基本无关紧要 .
只需将文件Raven.Studio.xap(您可以在/ Server目录中从发行版中找到它)复制到根文件夹(Global.asax所在的位置),您就可以了 .
我挂了这个 . 我可以看到端口8080已经绑定并正在侦听,但我一直收到404错误 . 事实证明,在引用Raven Studio时,您需要包含Web应用程序URL的任何虚拟目录部分 .
如果您的应用程序在IIS中注册为:
http://localhost/MyAwesomeApp
您可以访问Raven Studio:
http://localhost:8080/MyAwesomeApp
希望这有助于某人!