NEventStore с RavenDB во встроенном режиме

Я пытаюсь заставить NEventStore (v4) работать с RavenDB во встроенном режиме.

Моя строка подключения выглядит так:

<add name="EventStore" connectionString="DataDir = ~\Data" />

В Application_Start я настроил Raven Store следующим образом:

var documentStore = new EmbeddableDocumentStore
{
    ConnectionStringName = "EventStore"
};
documentStore.Initialize();

Это выполняется до инициализации любого кода хранилища событий. На данный момент я могу использовать Raven для сохранения документов. Так что Рейвен работает.

Для NEventStore инициализация выглядит так:

_store = Wireup.Init()
    .LogToOutputWindow()
    .UsingRavenPersistence("EventStore") 
    .InitializeStorageEngine()
    .UsingJsonSerialization()
    .Compress()
    .UsingSynchronousDispatchScheduler()
    .DispatchTo(new DelegateMessageDispatcher(DispatchCommit))
    .Build();

Когда это запускается, я получаю эту ошибку:

Имя строки подключения: «EventStore» не удалось проанализировать, неизвестная опция: «datadir»

При просмотре исходного кода (RavenDB) выясняется, что анализатор строки подключения не знает, что он читает встроенную строку подключения. Но я не вижу способа указать, что NEventStore должен использовать Raven во встроенном режиме.


person Phil Sandler    schedule 27.04.2014    source источник


Ответы (1)


Параметр 'DataDir' работает только с EmbeddableDocumentStore. NEventstore создает Магазин документов. Насколько я знаю, вы не можете изменить это поведение.

Что вы можете сделать, так это запустить встроенную RavenDB с HTTP включенным и подключитесь к локальному хосту.

person dusky    schedule 17.11.2014