Неизвестное значение дискриминатора «MyEvent»

с использованием механизма постоянства MongoDB в Jolever / EventStore , вызывая ошибку Неизвестное значение дискриминатора «MyEvent» . Проблема вызвана только тогда, когда я пытаюсь загрузить все события для воспроизведения событий, таких как this.storeevent.advanced.getfrom (новое datetime (2010, 1,1))

Проблемы вызваны в ExtsionsMethods.cs

public class MyClassEvent : IDomainEvent { ... }

public static Commit ToCommit(this BsonDocument doc, IDocumentSerializer serializer)
    {
        if (doc == null)
            return null;

        var id = doc["_id"].AsBsonDocument;
        var streamId = id["StreamId"].AsGuid;
        var commitSequence = id["CommitSequence"].AsInt32;

        var events = doc["Events"].AsBsonArray.Select(e => e.AsBsonDocument["Payload"].IsBsonDocument ? BsonSerializer.Deserialize(e.AsBsonDocument["Payload"].AsBsonDocument) : serializer.Deserialize(e.AsBsonDocument["Payload"].AsByteArray)).ToList();
        var streamRevision = doc["Events"].AsBsonArray.Last().AsBsonDocument["StreamRevision"].AsInt32;
        return new Commit(
            streamId,
            streamRevision,
            doc["CommitId"].AsGuid,
            commitSequence,
            doc["CommitStamp"].AsDateTime,
            BsonSerializer.Deserialize>(doc["Headers"].AsBsonDocument),
            events);
    }

Моя конфигурация похожа на это:

 Wireup.Init()                
            .UsingMongoPersistence(connectionName, new DocumentObjectSerializer())
            .UsingBsonSerialization()    
            .UsingAsynchronousDispatcher()                                
            .PublishTo(this.container.Resolve())
            .Build();

, но попробовал практически все виды сериализатора.

8
задан Marijn 31 July 2012 в 11:28
поделиться