public static EventRecord FromBson(BsonDocument doc) { var eventDocument = doc.GetBsonDocument("Event"); var record = new EventRecord() { EventDocument = eventDocument, Metadata = EventMetadata.FromBson(eventDocument.GetBsonDocument("Metadata")), Handlers = EventHandlerRecordCollection.FromBson(doc.GetBsonArray("Handlers")) }; return(record); }