我正在尝试从Web服务器请求数据。为此,我需要一个以YYYY-MM-DD
格式表示为字符串的日期列表。我看过这三个帖子one,two和three,但没有一个适合我。我也尝试过此方法,其他方法也都尝试过:
DateTime startDate = new DateTime(2018, 9, 7);
DateTime endDate = new DateTime(2018, 9, 30);
foreach (DateTime day in AllDays(startDate, endDate))
{
string dayX = day.ToString("yyyy-mm-dd", CultureInfo.InvariantCulture);
InsertEntry(dayX, requestLimit, connection);
}
使用以下方法:
private static IEnumerable<DateTime> AllDays(DateTime from, DateTime to)
{
for (DateTime day = from.Date; day.Date <= to.Date; day = day.AddDays(1))
yield return day;
}
不幸的是,使用第一个代码段转换DateTime对象后,我收到的字符串形式的Date看起来像这样:2018-00-07
显然不是有效的日期。我似乎找不到我的错误。因此,我的问题是:
1)我的转换是否错误或错误是Enumerable创建的一部分?
2)如何(有效)完成此操作?开销很重要,因为它将在服务器上运行。