我的一个用例需要存储来自单个事件生产者的“开始”和“停止”事件之间的所有事件。我们将使用可靠的演员来处理这些数据,并在收到“停止”事件后进行总结。在开始和停止之间存储所有事件的直接方式是在List类型中。服务结构 - 在StateManager中为可靠的演员存储列表<T>
// Init
var evts = new List<DataEvent>();
this.StateManager.TryAddStateAsync("events", evts);
// Fetch, add and save
var evts = this.StateManager.TryGetStateAsync<List<DataEvent>>("events");
evts.Add(newEvent);
this.StateManager.TrySaveStateAsync("events", evts);
从我每次取现有列表时,我的理解,增加一个新项目,并存储新的更新列表,StateManager将序列化/反序列化整个阵列。我的理解是否正确?
什么是这种解决方案的一个很好的选择?
感谢您的确认。我的流被分区,每个演员将处理一个设备,但是我需要在每个演员中存储一系列事件以便能够计算摘要。 – maulik13