作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
System.DateTime
对象具有 AddYears()、AddMonths()、AddDays()、AddSeconds()
等方法
我注意到没有 AddWeeks()
。这是为什么?
此外,我的要求是获取 52 周前的价格值。我知道这相当于 1 年,但具体是 52 周。
我这样做会不会一样:
yearOldPrice = _priceService.GetPriceForDate(price.Date.AddYears(-1));
作为
yearOldPrice = _priceService.GetPriceForDate(price.Date.AddDays(-7 * 52));
我假设 .AddDays(-7 * 52)
与 .AddWeeks(-52)
相同,因为一周有 7 天.
最佳答案
正如您在问题中指出的那样,与年和月不同,每周总是恰好有 7 天(无论如何在我的日历上),因此当您只需要做的是 .AddDays(weeks * 7)。尽管当他们有 AddMinutes 和 AddHours 时你不得不质疑逻辑!该死的他们和他们的矛盾之处!
不过,如果它真的困扰你,你总是可以为 .AddWeeks 创建一个扩展方法:
public static class DateTimeExtensions
{
public static DateTime AddWeeks(this DateTime dateTime, int numberOfWeeks)
{
return dateTime.AddDays(numberOfWeeks * 7);
}
}
正如其他人所指出的,一年不是 52 周。
关于c# - 为什么没有 DateTime.AddWeeks(),如何获取 52 周前的 DateTime 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6847346/
我正在用 PHP 中的 Carbon 创建一些日期,但我似乎做错了什么。 这是我的代码: $start = Carbon::create(2015, rand(6,7), rand(1,30), 0)
System.DateTime 对象具有 AddYears()、AddMonths()、AddDays()、AddSeconds() 等方法 我注意到没有 AddWeeks()。这是为什么? 此外,我
我是一名优秀的程序员,十分优秀!