0

我在我的 EventSTore 中流式传输所有事件:

eventStore.Advanced.GetFrom(DateTime.MinValue).ToArray().SelectMany(its => its.Events).ToArray();

将分页保持在默认值 128 会限制在 2989 处获取的事件数量。当我将分页大小增加到 9000 时,我会按预期获得所有事件(大约有 7K 事件)。

确保我收到所有事件的最佳方法是什么?即重建视图模型时?

顺便说一句,我仍在使用 ES 2.0 谢谢!

4

1 回答 1

0

EventStore v2.0 中有一个与分页相关的错误导致您看到的行为。EventStore v3.0 修复了这个错误。此外,我肯定会避免在该调用中使用 .ToArray(),因为如果您有 100K+ 事件,那么您要求的是 OutOfMemoryException。

进入 EventStore v3.0 后,您可以调用 GetFrom 并遍历事件并对每个事件执行某些操作,例如更新一组数据库表等。

于 2011-11-11T15:59:32.170 回答