我最终想要在一个列表中获得当前年份的所有日期。
我有以下代码可以给出特定月份的所有日期...
这适用于一个月,但我想将Range(1,12)包装在这段代码周围,像这样:
这是我的输出结果:
我可以使用 For 循环,但是也可以通过 Linq 实现这个功能。
谢谢。
我有以下代码可以给出特定月份的所有日期...
using System;
using System.Collections.Generic;
using System.Linq;
internal class Program
{
public static void Main(String[] args)
{
List<DateTime> ldtDates = new List<DateTime>();
Random rnd = new Random();
int intCurrentYear = DateTime.Now.Year;
int intCurrentMonth = DateTime.Now.Month;
List<DateTime> DatesThisMonth =
Enumerable.Range(1, DateTime.DaysInMonth(intCurrentYear, intCurrentMonth))
.Select(i => new DateTime(intCurrentYear, intCurrentMonth, i))
.ToList();
foreach (var q in DatesThisMonth)
{
Console.WriteLine(q);
}
Console.WriteLine("Press <enter> to continue");
Console.ReadLine();
}
}
这适用于一个月,但我想将Range(1,12)包装在这段代码周围,像这样:
using System;
using System.Collections.Generic;
using System.Linq;
internal class Program
{
public static void Main(String[] args)
{
List<DateTime> ldtDates = new List<DateTime>();
Random rnd = new Random();
int intCurrentYear = DateTime.Now.Year;
int intCurrentMonth = DateTime.Now.Month;
var DatesThisYesr =
Enumerable.Range(1, 12).Select(y=>
Enumerable.Range(1, DateTime.DaysInMonth(intCurrentYear, y))
.Select(i => new DateTime(intCurrentYear, intCurrentMonth, i))
).ToList();
foreach (var q in DatesThisYesr)
{
Console.WriteLine(q);
}
Console.WriteLine("Press <enter> to continue");
Console.ReadLine();
}
}
这是我的输出结果:
ime]
System.Linq.Enumerable+WhereSelectEnumerableIterator`2[System.Int32,System.DateT
ime]
System.Linq.Enumerable+WhereSelectEnumerableIterator`2[System.Int32,System.DateT
ime]
System.Linq.Enumerable+WhereSelectEnumerableIterator`2[System.Int32,System.DateT
ime]
System.Linq.Enumerable+WhereSelectEnumerableIterator`2[System.Int32,System.DateT
ime]
System.Linq.Enumerable+WhereSelectEnumerableIterator`2[System.Int32,System.DateT
ime]
System.Linq.Enumerable+WhereSelectEnumerableIterator`2[System.Int32,System.DateT
ime]
System.Linq.Enumerable+WhereSelectEnumerableIterator`2[System.Int32,System.DateT
ime]
System.Linq.Enumerable+WhereSelectEnumerableIterator`2[System.Int32,System.DateT
ime]
System.Linq.Enumerable+WhereSelectEnumerableIterator`2[System.Int32,System.DateT
ime]
System.Linq.Enumerable+WhereSelectEnumerableIterator`2[System.Int32,System.DateT
ime]
System.Linq.Enumerable+WhereSelectEnumerableIterator`2[System.Int32,System.DateT
ime]
Press <enter> to continue
我可以使用 For 循环,但是也可以通过 Linq 实现这个功能。
谢谢。