如何确定日期是否在C#中的日期范围内?

时间:2016-02-23 10:00:28

标签: c# datetime

如果输入的日期是1月到4月之间,我正在尝试编写代码来执行特定操作,但我无法为这两者进行有效比较。使用TryParse不会将我的字符串更改为适当的格式,如果没有某种形式的解析,则无法比较这两种类型。这就是我到目前为止所做的工作:

if (dtpCheckIn >= TryParse("1/1/2016") && dtpCheckIn < TryParse("5/1/2016")
{
    //Do Something
}

2 个答案:

答案 0 :(得分:2)

    var startDate = new DateTime(2016, 1, 1);

    var endDate = new DateTime(2016, 5, 1);   

    var checkInIsValid = dtpCheckIn >= startDate && dtpCheckIn < endDate; 
// i saw that your start, end date are previously defined

答案 1 :(得分:2)

如果您没有lines = (line for line in open('data', 'rb') if line.split(None, 1)[0].lstrip('0') in '123456789') 的自定义方法,则此方法属于TryParse结构,您可以将其用作DateTime.TryParse。但是甚至如果这样做,这个方法将字符串作为第一个参数,并将out作为第二个参数(通常使用该重载)。并返回DateTimetrue,因为您的字符串可以被解析。它返回false

我认为您的DateTime 已经 dtpCheckIn,您可以轻松使用DateTime<运算符来比较其他>=实例

正确的语法可以是;

DateTime

看看