如何使用C#从今天的日期和当前时间获得3个月前的日期和时间

时间:2012-11-22 12:06:13

标签: c# asp.net

我想从过去3个月保存的数据库获取数据,因为我有当前的日期和时间但是如何计算3个月的自我日期和时间,这样我可以在查询中传递这2个日期并获得在这些日期之间保存的数据

7 个答案:

答案 0 :(得分:14)

使用AddMonths method

DateTime ago = DateTime.Now.AddMonths(-3);

答案 1 :(得分:3)

试试这个:

DateTime.Now.AddMonths(-3)

答案 2 :(得分:1)

AddMonths方法

中使用-3作为参数
DateTime dtPreviousDate = DateTime.Now.AddMonths(-3);

DateTime.AddMonths Method

  

好几个月了。月份参数可以是负数或正数。

答案 3 :(得分:1)

您可以尝试此DateTime.Now.AddMonths(-3)

答案 4 :(得分:0)

AddMonths可能是否定的。

DataTable tblResult = new DataTable();
string sql = "SELECT * FROM dbo.TableName WHERE Date BETWEEN @startDate AND @endData";
using (var con = new SqlConnection(connectionString))
using (var cmd = new SqlCommand(sql, con))
using (var da = new SqlDataAdapter(cmd))
{
    // asuming that your startdate is three months ago and your enddate is now
    cmd.Parameters.AddWithValue("@startDate", DateTime.Now.AddMonths(-3));
    cmd.Parameters.AddWithValue("@endDate", DateTime.Now);
    da.Fill(tblResult);
}

答案 5 :(得分:0)

DateTime现在= DateTime.Now;
DateTime olddate = new DateTime(now.Year,now.Month-3,now.Day);

答案 6 :(得分:-1)

嗯,几个月的长度可能会有所不同,但是如果你不介意四舍五入,你可以随时做:

var newDate = oldDate.AddDays(-90);