在。net里怎样取到3个月以前的时间!!!

slg2003 2009-03-05 09:25:23
DateTime time = DateTime.Now.Date;
我使用这样的方法得到的当前的时间!!
我应该怎样才能把月份减去3个月那得到那一天的时间??
我们已经默认日期就是每月的第一天
所以只需要月份相减就可以

比如说今天是2009-3-5 我想得到2009-1-1
再比如今天是 2009-1-5 我怎样才能得到 2008-10-1

求教高手!!
...全文
157 16 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
cwmwss 2009-03-05
  • 打赏
  • 举报
回复
够多了
waitling23 2009-03-05
  • 打赏
  • 举报
回复
学习了
limii 2009-03-05
  • 打赏
  • 举报
回复
enhen
zzxap 2009-03-05
  • 打赏
  • 举报
回复
DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-3).ToShortDateString();
panw520 2009-03-05
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 silentwins 的回复:]
引用 7 楼 slg2003 的回复:
是这样 我的程序要求我通过调用后台服务器的时间得到的一个日期
然后

DateTime endDate = InvoiceDetailManager.GetServerDateTime();
endDate.AddMonths(-3);

Response.Write(endDate);

这样的到的值就没有改变


你要赋值,你把endDate的Months Add(-3),这样的返回是一个时间,但你没把计算出来后的这个时间保存在endDate里面,得到的值当然没变啦
所以你要看清楚 dt = dt.AddMont…
[/Quote]
赋值是最基础的东西
slg2003 2009-03-05
  • 打赏
  • 举报
回复
奥~~~~
知道了!!!
谢谢
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 ljhcy99 的回复:]
DateTime dt = DateTime .now;
dt.AddMonths(-3);
[/Quote]

这样写是不行的

dt = dt.AddMonths(-3);
必须要赋值才行,因为这是值类型,不是引用类型。
silentwins 2009-03-05
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 slg2003 的回复:]
是这样 我的程序要求我通过调用后台服务器的时间得到的一个日期
然后

DateTime endDate = InvoiceDetailManager.GetServerDateTime();
endDate.AddMonths(-3);

Response.Write(endDate);

这样的到的值就没有改变
[/Quote]

你要赋值,你把endDate的Months Add(-3),这样的返回是一个时间,但你没把计算出来后的这个时间保存在endDate里面,得到的值当然没变啦
所以你要看清楚 dt = dt.AddMonths(-3); 这句话的意思~~
hk200x 2009-03-05
  • 打赏
  • 举报
回复
Response.Write(endDate.AddMonths(-3));
slg2003 2009-03-05
  • 打赏
  • 举报
回复
是这样 我的程序要求我通过调用后台服务器的时间得到的一个日期
然后

DateTime endDate = InvoiceDetailManager.GetServerDateTime();
endDate.AddMonths(-3);

Response.Write(endDate);

这样的到的值就没有改变
ljhcy99 2009-03-05
  • 打赏
  • 举报
回复
DateTime dt = DateTime .now;
dt.AddMonths(-3);
  • 打赏
  • 举报
回复
//上个月,减去三个月份

DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-3).ToShortDateString();



//下个月,加去一个月份

DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(1).ToShortDateString();


//今天

DateTime.Now.Date.ToShortDateString();

//昨天,就是今天的日期减一

DateTime.Now.AddDays(-1).ToShortDateString();

//明天,同理,加一

DateTime.Now.AddDays(1).ToShortDateString();
silentwins 2009-03-05
  • 打赏
  • 举报
回复
        DateTime dt = DateTime.Now;
dt = dt.AddMonths(-3);
dt = DateTime.Parse(dt.ToString("yyyy-MM-01"));
slg2003 2009-03-05
  • 打赏
  • 举报
回复
不行呀!!!
dt的值还是2009-3-5
  • 打赏
  • 举报
回复
DateTime time = DateTime.Now.AddMonths(-3);
silentwins 2009-03-05
  • 打赏
  • 举报
回复
DateTime dt = xxxxx;
dt.AddMonths(-3);

62,247

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧