我正在编写一段代码来执行如下所示的 Linq 查询:
return uow.GetRepository<SomeProjection>().GroupBy(x => x.Key).ToDictionary(x => x.Key, y =>
y.Select(z => new EditableSomeProjection
{
Type = z.Type,
Key = z.Key,
Value = z.Value,
Component = z.ComponentCode,
Culture = z.CultureCode,
Code = z.Code.Key,
Version = z.Version,
Category = z.Category
}).ToList());
基本上这个查询工作正常,但我需要调整它,所以它给我一个稍微不同的结果。
这是我所处的场景。我有以下数据:
ComponentCode CultureCode Key Value .....
MainLevel fr MainHall (fr)Main hall
West_Level en MainHall Entrance
MainLevel en MainHall Main hall
基本上,Linq 查询给了我一个字典的位置是Dictionary
记录的位置(在这种情况下),值是其中的三个记录。Key
Key
MainHall
List
但我也想把ComponentCodes
它和它分开。所以分组Key
很好(我猜),但我不希望MainLevel
和West_Level
ComponentCodes 也被分组在同一个列表中。它们应该放在一个单独的列表中。
当前词典
(字典的键 == 数据库列的键)
Dictionary("MainHall", List(MainLevel fr MainHall (fr)Main hall
West_Level en MainHall Entrance
MainLevel en MainHall Main hall ));
我需要的
(Dictionary with 2 entries)
Dictionary("MainHall", List(West_Level en MainHall Entrance ));
Dictionary("MainHall", List(MainLevel fr MainHall (fr)Main hall
MainLevel en MainHall Main hall ));
How can i adjust this Linq query to give me such a result?