使用JOliver EventStore 3.0和Json Serialization插件,我在配置过程中调用它,如下所示:
var eventStore = Wireup.Init()
.UsingRavenPersistence("RavenDB")
.InitializeStorageEngine()
.UsingJsonSerialization()
.Build();
它运行良好,但我不知道如何自定义序列化。它在后台使用Json.Net,所以我应该能够调整序列化,例如添加ISODateTimeConverter。
EventStore是否以任何方式公开序列化程序,以便我可以对其进行调整?
Raven通过documentStore.Conventions.CustomizeJsonSerializer做到了这一点。EventStore已经有类似的东西了吗?
据我所知,没有任何配置选项允许您这样做。EventStore还将其依赖项内部化,因此您将无法"访问"Json.NET类。不过,您可以创建自己的EventStore连接扩展,并通过自己依赖Json.NET来配置自己的Json序列化程序。
这实际上是在NES中为自定义序列化程序所做的,如果你感兴趣,你可以在这里找到一个例子:https://github.com/elliotritchie/NES/blob/master/src/NES/EventStore/NESWireup.cs