结束日期应该大于五天,随后开始日期

问题描述:

这是我使用的变量:结束日期应该大于五天,随后开始日期

var start = new DateTime(); 
var End = new DateTime(); 

帮我出用if条件验证。

+1

你的意思是*确切* 5天以上,或*至少* 5天以上?如果他们出了几毫秒会怎么样?请澄清你的问题。 – 2012-07-27 05:54:27

如果我理解正确,你将不得不尝试像

if (start.AddDays(5) == End) 

DateTime.AddDays Method

+0

那么......希望他们没有一分一毫秒:-)但是,是的,工作。 – 2012-07-27 05:47:46

可以计算两个日期之间的时间跨度和使用时间跨度的性质,以确定它们相距多远,例如

TimeSpan diff = new TimeSpan(End.Ticks - start.Ticks); 
double daysApart = diff.TotalDays; 

if (daysApart >= 5.0) // Do stuff (assumes you want at least 5 days) 

试试这个:

TimeSpan elapsed; 
elapsed = end.Subtract(start); 
if (elapsed.Days > 5) 
//Do stuff 

http://www.dotnetperls.com/datetime

if(end.Subtract(start).Days > 5) 

你应该熟悉DateTime structure。对于这个特别是AddDays method或取决于你如何最终做事Subtract method

// Setting end date to start date plus 5 days 
var start = new DateTime(); 
var end = start.AddDays(5) 

// Testing if end date is the same as start date plus 5 days 
if (start.AddDays(5) == end) 
{ 
    // It true! 
} 

/// or like so... 
if (end.subtract(start).Days >= 5) 
{ 
    // It true! 
}