下拉未来10年

use*_*186 8 .net c# asp.net-mvc asp.net-mvc-4

在MVC4(View)中显示当前年度加上未来10年的下拉列表的最佳方法是什么?我应该创建一个枚举然后将其包含在我的视图模型中并创建该枚举类型的变量吗?

LIN*_*dka 17

Enumerable.Range(DateTime.Now.Year, 10)
Run Code Online (Sandbox Code Playgroud)

将为您提供数字,然后您可以在DropDownList的SelectList()构造函数中使用这些数字


Thi*_*a H 9

当您使用Enum时,它将进行硬编码.每年年底,您都必须重新部署解决方案.最好在业务层中使用以下代码并推入视图层然后基于服务器日期每个用户都可以重新执行未来10年.

 IList<int> years= Enumerable.Range(DateTime.Now.Year, 10).ToList();
Run Code Online (Sandbox Code Playgroud)