C#:我怎么减去两个日期? [英] C#: how do I subtract two dates?

查看:183
本文介绍了C#:我怎么减去两个日期?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

下面是我的代码:

DateTime date1 = new DateTime(byear, bmonth, bday, 0, 0, 0);
DateTime datenow =  DateTime.Now;
DateTime date2 = datenow - date1

在最后一行我得到这个错误:

On the last line I am getting this error:

错误1无法隐式转换类型'System.TimeSpan'到'System.DateTime的

Error 1 Cannot implicitly convert type 'System.TimeSpan' to 'System.DateTime'

我如何减去两个日期?

推荐答案

好一点的是,如果你想起来,减去一个日期到另一个不应该产生一个日期,它应该产生一个时间跨度。 ,那就是当你使用DateTime.Subtract()会发生什么

Well the point is that if you think of it, subtracting a date to another should not yield a date, it should yield a time span. And that is what happens when you use DateTime.Subtract().

TimeSpan timeSpan = datenow - date1; //timespan between `datenow` and `date1`

这会使你当前的代码的工作。

This will make your current code work.

如果您要减去另一方面,比方说,从日起一年内,你可以使用:

If on the other hand you want to subtract, let's say, one year from your date, you can use:

DateTime oneYearBefore = DateTime.Now.AddYears(-1); //that is, subtracts one year

这篇关于C#:我怎么减去两个日期?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆