从数组创建选择列表

Jef*_*eff 2 c# linq arrays ienumerable list

可能重复:
如何使用linq查找列表中的索引特定项?

我试图IEnumerable<SelectListItem>从一个字符串数组创建一个.

string[] months = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" };

model.month = months
        .Select(r => new SelectListItem{Text = r, Value = ???});
Run Code Online (Sandbox Code Playgroud)

有没有办法在此查询中访问其索引?

Ser*_*kiy 13

使用重载的Enumerable.Select方法:

model.month = months
    .Select((r,index) => new SelectListItem{Text = r, Value = index.ToString()});
Run Code Online (Sandbox Code Playgroud)


Son*_*nül 5

试试看Enumerable.Select

通过合并元素的索引,将序列的每个元素投影为新形式。

model.month = months
        .Select((r, i) => new SelectListItem{Text = r, Value = i.ToString()});
Run Code Online (Sandbox Code Playgroud)