Jon*_*eet 66
您可以非常轻松地编写辅助方法:
public static IEnumerable<DateTime> AllDatesInMonth(int year, int month)
{
int days = DateTime.DaysInMonth(year, month);
for (int day = 1; day <= days; day++)
{
yield return new DateTime(year, month, day);
}
}
Run Code Online (Sandbox Code Playgroud)
然后用:
foreach (DateTime date in AllDatesInMonth(2012, 1))
Run Code Online (Sandbox Code Playgroud)
对于你只做过一次的事情来说,这可能有点过头了,但for
如果你这么做的话,它比使用循环或类似东西要好得多.它使你的代码,说只是想实现的,而不是力学,你是如何做的.
Bra*_*don 22
请尝试使用for循环.
for (int i = 1; i <= DateTime.DaysInMonth(year, month); i++)
{
DateTime dt = new DateTime(year, month, i);
}
Run Code Online (Sandbox Code Playgroud)
Joe*_*Joe 13
你可以使用范围:
Enumerable
.Range(1, DateTime.DayInMonth(2012, 1)
.Select(i => new DateTime(2012, 1, i)))
.ToList() // ForEach is not a Linq to Sql method (thanks @Markus Jarderot)
.ForEach(day => Console.Write(day));
Run Code Online (Sandbox Code Playgroud)
das*_*ght 10
你可以用一个简单的循环来做到这一点:
DateTime first = new DateTime(2012, 1, 1);
for (DateTime current = first ; current.Month == first.Month ; current = current.AddDays(1)) {
}
Run Code Online (Sandbox Code Playgroud)
生成枚举天很容易.这是一种方法
Enumerable.Range(1, DateTime.DaysInMonth(year, month)).Select(day =>
new DateTime(year, month, day))
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
20169 次 |
最近记录: |