#c# #entity-framework
#c# #entity-framework
Вопрос:
Как использовать код Entity Framework сначала, чтобы получить группу по данным, а затем добавить в List<object>
?
Мой код, похоже, не работает:
public IEnumerable<Data> getData()
{
List<Data> data_cont = new List<Data>();
DataContent db = new DataContent();
// not working code
data_cont = db.MyData.GroupBy(f => f.start_station_num).ToList();
return data_cont;
}
Почему .GroupBy
не работает так же, как .Where
вот так
// working code
data_cont = db.MyData.Where(x => x.start_station_num == ""31232"").ToList();
Ответ №1:
Причина, по которой код не «работает» (ie….it даже не будет собран), потому что метод GroupBy возвращает
IEnumerable<IGrouping<TKey, TElement>
и не
IEnumerable<TElement>
как это делает метод Where.
Вам нужно изменить объявление вашей переменной для data_cont. Это должно выглядеть следующим образом:
List<IGrouping<string, Data>> data_cont = null;
Вместо использования списка, подобного этому:
List<Data> data_cont = new List<Data>();