У меня есть следующий код, который создает словарь, содержащий несколько списков; каждый список можно получить с помощью цифровой клавиши.
public class myClass
{
public string Group { get; set; }
public int GroupIndex { get; set; }
...
}
public List<MyClass> myList { get; set; }
private Class IndexedGroup
{
public int Index { get; set; }
public IEnumerable<MyClass> Children { get; set; }
}
public Dictionary<int, IEnumerable<MyClass>> GetIndexedGroups(string group)
{
return myList.Where(a => a.Group == group)
.GroupBy(n => n.GroupIndex)
.Select(g => new IndexedGroup { Index = g.Key, Children = g })
.ToDictionary(key => key.Index, value => value.Children);
}
Есть ли способ устранить класс IndexedGroup
?
Я пытался использовать анонимный тип в методе Select
, например:
.Select(g => new { Index = g.Key, Children = g })
но я получаю ошибку преобразования типа.