我可以根据条件分组并 return 源类型值吗

Can I groupby with conditions and return the source type value

我有以下脚本数据:

Database File
master sql_master
myDB sql_sameGroup1
myDB sql_sameGroup2
myDB sql_sameGroup3
myDB sql_special

scripts.GroupBy(script => new { script.Database, script.File}) 将使它成为 5 组,但我只想要 3 组 - 规则是按数据库区分,然后对于同一个数据库,如果File != sql_special,我想把它放在同一个组 - 这意味着在上面table Row1是group1,Row 2,3,4是group2,Row5是group3。 return 用于进一步处理的脚本类型。

我没有发现 suitable GroupBy 方法重载。我怎样才能做到这一点?

继续按数据库和文件分组 属性,但不是整个文件 属性,只是检查它是否 sql_special

scripts
    .GroupBy(script => new 
    { 
        script.Database, 
        IsSqlSpecial = script.File is "sql_special" 
    })

Runnable online version