小问题:如何在 Angular 应用中使用 linq-es2015 对两个键进行分组?
一个键很好用,但我不知道如何添加另一个键。
var results = asEnumerable(fieldtoregion)
.GroupBy(x => x.regionId, x => x, (key, b) => {
return { regionId: key, fields: asEnumerable(b).ToArray() }
}).ToArray();
第二个键名:isCollection。 我试过:
- x => { r: x.regionId, c: x.isCollection }
- x => ({ r: x.regionId, c: x.isCollection })
- x => ("$x.regionId $x.isCollection")
任何帮助将不胜感激!!
这是要测试的 TypeScript 类:
export class FieldViewModel {
id!: number;
postId!: number;
pageId!: number;
regionId?: string | undefined;
translationId!: number;
clrType?: string | undefined;
fieldId?: string | undefined;
isCollection!: boolean;
}
最佳答案
您可以尝试仅使用第三个和第四个参数进行分组。分组字符串由两个带空格的属性组成。
var results = asEnumerable(fieldtoregion)
.GroupBy(
null,
null,
(key, b) => ({ regionId: key, fields: asEnumerable(b).ToArray() }),
"$.regionId + ' ' + $.isCollection"
)
.ToArray();
关于javascript - 如何使用 linq-es2015 在两个键上进行 GroupBy?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51004218/