Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
LINQ要查询服务结构可靠集合吗?_Linq_Azure Service Fabric_Service Fabric Stateful - Fatal编程技术网

LINQ要查询服务结构可靠集合吗?

LINQ要查询服务结构可靠集合吗?,linq,azure-service-fabric,service-fabric-stateful,Linq,Azure Service Fabric,Service Fabric Stateful,是否有计划在Service Fabric上添加对可靠集合的LINQ支持?有人知道可以实现这一点的扩展吗?在以前的API版本中,这似乎是可能的,但现在已经不可能了。在一个可靠的字典上,您可以使用CreateEnumerableAsync创建一个异步可枚举文件。(文件) 接下来,您可以使用Eli的扩展方法创建linq查询 gist中的示例: var accounts = await (await accountNames.CreateLinqAsyncEnumerable(txn))

是否有计划在Service Fabric上添加对可靠集合的LINQ支持?有人知道可以实现这一点的扩展吗?在以前的API版本中,这似乎是可能的,但现在已经不可能了。

在一个可靠的字典上,您可以使用
CreateEnumerableAsync
创建一个异步可枚举文件。(文件)

接下来,您可以使用Eli的扩展方法创建linq查询

gist中的示例:

var accounts = await (await accountNames.CreateLinqAsyncEnumerable(txn))
                .Where(x => x.Value.IndexOf(name, StringComparison.InvariantCultureIgnoreCase) >= 0)
                .SelectAsync(async x => new Account
                {
                    Id = x.Key,
                    Name = x.Value,
                    Data = (await accountData.TryGetValueAsync(txn, x.Key)).Value
                })
                .ToList();

这台机器的性能如何?枚举是只发生在满量程的数据子集上,还是所有数据都被拉入内存,枚举是发生在整个集合上?还想知道上述注释的答案。我将有相当大的集合,我只需要抓取记录的子集,如果这将整个集合拉到内存中,这是不可能的。我相信上面的代码在某个时候会在内存中有每个值,但如果没有预测值,它将有资格被分页(再次)。此代码可以通过使用索引和/或键过滤器进行优化。