Я пытаюсь выбрать магазины с помощью лямбда-функции и преобразовать результат в SelectListItem, чтобы я мог его отобразить. Однако он бросает " Тип выражения в Select Clause is Incorrect":
IEnumerable<SelectListItem> stores =
from store in database.Stores
where store.CompanyID == curCompany.ID
select (s => new SelectListItem { Value = s.ID, Text = s.Name} );
ViewBag.storeSelector = stores;
Что я делаю неправильно?
EDIT:
Также, как мне преобразовать Int в String в этой ситуации? Не работает следующее:
select (s => new SelectListItem { Value = s.ID.ToString(), Text = s.Name} );
select (s => new SelectListItem { Value = s.ID + "", Text = s.Name} );
ИЗМЕНИТЬ 2:
Вывести преобразование Int в String. Это типично для Microsoft, чтобы забыть включить функцию преобразования int2string. Вот фактический обходной путь, который все используют, с полностью работающим синтаксисом:
select new SelectListItem { Value = SqlFunctions.StringConvert((double)store.ID), Text = store.Name };
Называть эту ситуацию абсурдным является преуменьшение.