问题描述
首先,抱歉,我知道这个问题已经发布了,但只有一个解决方案指向死链接,没有其他选择。所以响应不再存在。
我正在使用 dapr,涉及 docker,我正在使用它来存储一些数据。
var record = await client.GetStateAsync<Record>(StoreName,id);
记录是一个对象,record.Id = id
现在我需要执行 Getall,因此,获取 Record 类型的所有记录。
这是我的代码:
var stringList = new List<string>();
stringList.Add(id);
var mylist = stringList.AsReadOnly();
var recordList = await client.GetBulkStateAsync(StoreName,mylist,null);
它已构建,但在运行时出现错误,因为 myList
不能为 null
。
那我该怎么做?
选项 1:
有连续的 id 然后在它们之间迭代,这不是一个很好的解决方案,我必须为 id 假设一个限制值。
选项 2:删除 dapr,不是一个好的解决方案,因为它不能解决问题,这也是一种解决方法。
那么,我如何执行 getAll?
解决方法
在这里https://github.com/dapr/dapr/issues/944,dapr 人员建议使用所有键创建一个对象,然后首先检索该对象,获取键并遍历它们。我猜目前还没有 getAll 实现,从它的外观来看,它不会很快到来。