SelectList多年

Jef*_*eff 8 c# asp.net-mvc-4

这可能非常简单......我试图创建一个SelectList包含当前版本的年份,直到2008年.这将始终如此.例如,在2020年,我的SelectList将包含2020年至2008年的值.

我设置了这个循环,但我不确定这个最好的地方是什么

for (int i = currentYear; i != 2009; --i)
{

}
Run Code Online (Sandbox Code Playgroud)

是否可以创建单个SelectListItem并将其"添加"到SelectList每次迭代?

我不认为上面的陈述是可能的,所以我的下一个想法是创建一个年份列表,然后使用LINQ来创建它.

var selectList = ListOfYears.Select(new SelectListItem
{
    Value =
    Text = 
});
Run Code Online (Sandbox Code Playgroud)

但后来我不完全确定如何从列表中获取值.谢谢

Jus*_*ner 17

var selectList = 
    new SelectList(Enumerable.Range(2008, (DateTime.Now.Year - 2008) + 1));
Run Code Online (Sandbox Code Playgroud)

  • 谢谢.这适用于`var selectList = new SelectList(Enumerable.Range(2008,DateTime.Now.Year - 2007).Reverse());` (2认同)