Какой тип данных возвращается на этом Linq to SQL? - PullRequest
3 голосов
/ 14 марта 2012

Я пытаюсь выяснить тип возвращаемого значения. Похоже, ToList () возвращает список, но я не уверен, какой тип.

 var id = (from h in db.t_ref_harvest_type
                  where h.manner_of_take_id == methodOfTakeId && 
               parsedSeasons.Contains((int)h.season) && h.active == true
                  select new { h.id, h.harvest_type }).ToList();

1 Ответ

5 голосов
/ 14 марта 2012

Это Список анонимного типа , который имеет id и тип в качестве свойства.

когда вы пишете Select new в запросе linq, он создает анонимный тип со свойством, которое вы указали в select new {}.

enter image description here

Полная версия: SQL в LINQ (визуальное представление)

EDIT

@ KeelRisk - вы не можете вернуть список анонимного типа из метода ... если вы просто хотите вернуть id, чем изменить запрос, выберите "List<int> lstid= (.....Select h.id).ToList<int>();" и затем вернете lstid... сделаем вам

List<int> lstid = (from h in db.t_ref_harvest_type                  
 where h.manner_of_take_id == methodOfTakeId && parsedSeasons.Contains((int)h.season)
 && h.active == true                   
select h.id ).ToList(); 
...