1

我试图让 NEventStore (v4) 在嵌入式模式下与 RavenDB 一起工作。

我的连接字符串如下所示:

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

在 Application_Start 中,我这样设置 Raven Store:

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

这在任何事件存储代码被初始化之前运行。此时我可以使用 Raven 来保存文档。所以乌鸦在工作。

对于 NEventStore,init 看起来像这样:

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

当它运行时,我收到此错误:

连接字符串名称:“EventStore”无法解析,未知选项:“datadir”

在查看(RavenDB)源代码时,连接字符串解析器似乎不知道它正在读取嵌入式连接字符串。但我没有看到任何方式表明 NEventStore 将在嵌入式模式下使用 Raven。

4

1 回答 1

0

选项“DataDir”仅适用于 EmbeddableDocumentStore。NEventstore创建一个 DocumentStore。据我所知,你不能改变这种行为。

您可以做的是在启用 HTTP的情况下启动 Embedded RavenDB并连接到 localhost。

于 2014-11-17T17:22:36.583 回答