Да, LINQ to Objects - твой друг:
var changeLogTypes = ChangeLogFunctions.GetAllChangelogTypes()
.Select(x => new ListItem {
Text = x.Type,
Value = x.ID.ToString() })
.ToList();
Часть Select
проецирует каждую ChangeLogType
на ListItem
, а ToList()
преобразует полученную последовательность в List<ListItem>
.
Предполагается, что вы действительно хотите новый список со всеми этими записями. Если вам нужно добавить результаты в существующий список , вы сделаете это без вызова ToList
, а вызовом AddRange
в существующем списке с результатом вызова Select
.
Стоит узнать больше о LINQ в целом и LINQ to Objects в частности - это может сделать все подобные вещи намного проще.