15

Visual Studio 2010 で NuGet を介してインストールされた埋め込み RavenDB =>RavenDB-Embedded.1.0.499パッケージで遊んでいます。これは、この優れた MSDN 記事を読んだ後に開始した現在のプロジェクトで使用されています。

RavenDB を ASP.NET MVC 3 アプリケーションに埋め込む

ここで、 RavenDB Management Studio (Web UI)にアクセスしたいと思います。

ここで説明されている手順に従いました: Is it possible to connect to an embedded DB with Raven Management Studioと here Running RavenDB in embedded mode with HTTP enabled ですが、要点がわかりませんでした。

これは、を初期化するために使用しているコードですDocumentStore

_documentStore = new EmbeddableDocumentStore
            {
                ConnectionStringName = "RavenDB",
                UseEmbeddedHttpServer = true
            };

そして、これは のConnectionString現在ですWeb.config:

<add name="RavenDB" connectionString="DataDir = ~\App_Data\Database" />

RavenDB: Embedded Modeで説明されている手順も読みました。サーバーを手動で起動しようとしました:

// Start the HTTP server manually
var server = new RavenDbHttpServer(documentStore.Configuration,
documentStore.DocumentDatabase);

server.Start();

しかし、上記のコードはRavenDbHttpServer, documentStore.Configurationandがないため時代遅れのようですdocumentStore.DocumentDatabase。なんとか見つけRaven.Database.Server.HttpServerましたが、他のオブジェクトが にありません_documentStore

したがって、質問は次のとおりです。

組み込みデータベースのドキュメントを視覚化するために Web UI にアクセスするにはどうすればよいですか? ブラウザのアドレス バーに入力する URL は何ですか?

アドバイスをいただければ幸いです。

編集:私はそれを機能させる方法を見つけました。ブログ投稿で説明したように、これは最善のアプローチではないかもしれませんが、機能します。

RavenDB Embedded with Management Studio UI

注: 上記のアプローチの欠点の 1 つは、サーバーによってデータベースが開かれるとロックされるため、アプリでデータベースにアクセスできないことです。この方法では、サーバーを停止してから、ブラウザーでアプリをリロードする必要があります。

そこにいる RavenDB の第一人者がより良い/正しいアプローチを持っていることを願っています... お知らせください。

4

1 に答える 1

12

管理スタジオにアクセスするためにサーバーを手動で実行する必要はありませんでした。あなたの質問で言及されていない、私が通常行ういくつかの手順は次のとおりです。

// Add the following line prior to calling documentStore.Initialize()
Raven.Database.Server.NonAdminHttp.EnsureCanListenToWhenInNonAdminContext(8080);

Raven.Studio.xapWeb プロジェクトのルート フォルダーにコピーします。

Web アプリケーションが実行されている場合、RavenDB Management Studio はhttp://localhost:8080でアクセスできます。

于 2011-11-13T23:53:01.593 に答える