gpt4 book ai didi

c# - 如何创建 Linq 表达式来创建最多 100 个对象的组

转载 作者:行者123 更新时间:2023-11-30 13:20:48 25 4
gpt4 key购买 nike

我有一个 LINQ 表达式,可以按分区对 Azure 表存储中的客户进行分组。

因为 Azure 一次只支持最多 100 个实体的批处理操作(并且批处理中的实体大多具有相同的 PartitionKey),所以我需要每个组最多包含 100 个实体。

//How to complete this LINQ expression
var groups = customers.GroupBy(c => c.PartitionKey)....;

//Do some Azure table storage magic in parallel
Parallel.ForEach(groups , customersInGroup => {...});

如何完成我的 LINQ 表达式,使每个组最多包含 100 个客户?那就是......如果客户收集例如。有 142 个具有相同 PartitionKey 的客户,我想创建两个组...一个组有 100 个客户,另一个组有 42 个客户。

最佳答案

对于 LINQ to Objects:

yourCollection
.Select((v, i) => new {Value = v, Index = i})
.GroupBy(x => x.Index / 100)

虽然不确定这是否适用于 Azure...

关于c# - 如何创建 Linq 表达式来创建最多 100 个对象的组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4304173/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com