Gram z osadzonym pakietem RavenDB =>RavenDB-Embedded.1.0.499
instalowanym przez NuGet w Visual Studio 2010. Jest on używany w bieżącym projekcie, który rozpocząłem po przeczytaniu tego świetnego artykułu MSDN:Uruchamiam RavenDB jako EmbeddableDocumentStore i korzystam z RavenDB Management Studio
Embedding RavenDB into an ASP.NET MVC 3 Application
teraz chciałbym przejść do RavenDB Management Studio (Web UI).
Wykonałem opisane tu czynności: Is it possible to connect to an embedded DB with Raven Management Studio i tutaj Running RavenDB in embedded mode with HTTP enabled, ale nie zrozumiałem.
Jest to kod używam do zainicjowania DocumentStore
:
_documentStore = new EmbeddableDocumentStore
{
ConnectionStringName = "RavenDB",
UseEmbeddedHttpServer = true
};
i to jest ConnectionString
obecny w Web.config
:
<add name="RavenDB" connectionString="DataDir = ~\App_Data\Database" />
Czytałem również kroki opisane w RavenDB: Embedded Mode. Próbowałem uruchomić serwer ręcznie:
// Start the HTTP server manually
var server = new RavenDbHttpServer(documentStore.Configuration,
documentStore.DocumentDatabase);
server.Start();
ale powyższy kod wydaje się nieaktualne, ponieważ nie mam RavenDbHttpServer
, documentStore.Configuration
i documentStore.DocumentDatabase
. Udało mi się znaleźć Raven.Database.Server.HttpServer
, ale brakuje innych obiektów w _documentStore
.
Więc pytanie brzmi:
Jak mogę uderzyć interfejs WWW do wizualizacji moje dokumenty osadzone bazy danych? Jaki adres URL powinienem umieścić w pasku adresu przeglądarki?
Każda rada jest doceniana.
EDYCJA: Znalazłem sposób na uzyskanie go do pracy. Jak opisałem w moim blogu to może nie być najlepszym rozwiązaniem, ale to działa:
RavenDB Embedded with Management Studio UI
Uwaga: jeden Wadą powyższego podejścia jest to, że nie jestem w stanie uzyskać dostęp do bazy danych w moim app ponieważ po otwarciu przez serwer zostanie zablokowany. W ten sposób muszę zatrzymać serwer, a następnie ponownie załadować aplikację w przeglądarce.
Mam nadzieję, że guru RavenDB ma lepsze/poprawne podejście ... daj nam znać.
OMG: To jest dziwne ... Próbowałem http: // localhost: 8080, ale nie działało na początku. Teraz udało mi się go uruchomić bez nawet dodawania '" CheckCanListenToWhenInNonAdminContext ". Domyśl. Myślę, że miałem inną usługę działającą na porcie 8080 przy pierwszej próbie ... Dzięki John! –
To działa, ale jeśli debuguję test jednostki, zatrzymuje on wykonywanie serwera HTTP, więc nie mogę go używać, chyba że nie debuguję, co oznacza, że nie mogę debugować testów i oglądać studio, co oznacza, że jest to bezużyteczne. Czy istnieje sposób, aby tego uniknąć? – kamranicus