2
ServiceStack을 사용할 때 EventMessage.Body가 원래 객체로 역 직렬화되지 않습니다. 대신 EventMessage.Body는 JSON 문자열입니다. 오프 EventStore.Serialization.ServiceStack JOliver의 EventStore : ServiceStack serializer를 사용할 때 이벤트를 읽을 수 없습니다.
- 열고 EventStore 프로젝트를하고 EventStore.Example 프로젝트
- 로 이동합니다
재현하려면 어셈블리를 사용하여 EventStore에 서명하십시오. 예제 프로젝트
- MainProgram.WireupEventStore를 .UsingServiceStackJsonSerialization()으로 변경하십시오.
- 다음을 추가하십시오 MainProgram.Main()의 끝 부분에 코드 :
-
var stream = store.OpenStream(StreamId, 0, int.MaxValue);
var myFirstEvent = (SomeDomainEvent) (stream.CommittedEvents.First().Body);
Console.Out.WriteLine("MyFirstEvent.Value=" + myFirstEvent.Value);
이 솔루션을 사용하면 이벤트를 deserialize하여 결국 Newton에서 ServiceStack으로 전환 할 경우의 성능상의 이점을 거의 부정 할 수 있습니다. 이것이 EventStore/ServiceStack 플러그인의 버그라고 생각하거나 잘못 사용하고 있습니다. 나는 당신의 대답을 upvoted했지만 대답하지 않은 질문을 남겼습니다. –