DropDownList动态数据 - ASP.Net

时间:2014-10-12 05:04:32

标签: asp.net .net drop-down-menu

我将在本月和接下来的两个月的第一天添加到我的下拉列表中,问题是,当我在11月对此进行测试时,它就是这样:

2014年11月1日 2014年12月1日 2014年1月1日

如你所见,01/01/2014是错误的,它需要是01/01/2015,我不知道如何开始这个,任何建议都表示赞赏。谢谢。

这是我的代码:

for (int i = 0; i < 3; i++)
{
    DateTime dt = DateTime.Now;
    DateTime dayone = new DateTime(dt.AddMonths(1).Year, dt.AddMonths(+i).Month, 1);
    DropDownList3.Items.Add(dayone.ToString("MM/dd/yyyy"));
}

1 个答案:

答案 0 :(得分:2)

简短的回答是dt.AddMonths(1)。永远是下个月的年份。因此,下个月是11月,现在仍然是2014年,你将在每个循环中都有这个。

这可能更好地重构为:

DateTime dt = new DateTime(DateTime.Now.Year, DateTime.Now.Month, 1);
for (int i = 0; i < 3; i++)
{
    DropDownList3.Items.Add(dt.AddMonths(i).ToString("MM/dd/yyyy"));
}