如何在C#中验证日期
本文关键字:验证 日期 | 更新日期: 2023-09-27 18:21:33
我想使用两(2)个日期选择器在给定日期之间的2个月内验证日期
示例:DATEPICKERdatefrom=2013年5月2日和DATEPICKEDDateto=2013年8月3日(dd/mm/yyyy)
我的声明应该是什么
if ( /*DATEPICKERdatefrom between DATEPICKERdateto is not between 2 months*/ )
{
messagebox.show("the Date must within 2 months")
}
else
{
//GO
}
这里有一个如何偏移日期的示例。
DateTime twoMonthsBack = DateTime.Now.AddMonths(-2);
DateTime twoMonthsLater = DateTime.Now.AddMonths(2);
您可以将示例中的DateTime.Now
替换为您的日期。并且您可以选择对其进行验证。
也许
if(DATEPICKERdateto > DATEPICKERdatefrom.AddMonths(2))
{
//to date is more than two months from start date
messagebox.show("the Date must within 2 months");
}
else
{
//GO
}
上面的例子是基于这样一个假设,即从日期开始总是小于截止日期。
如果这些值是DateTime
,则可以简单地使用<
或>
运算符进行比较。
if((date > DATEPICKERdatefrom) && (date < DATEPICKERdateto))
这些运算符被DateTime
重载为;
[TargetedPatchingOptOut("Performance critical to inline across NGen image boundaries")]
public static bool operator < (DateTime t1, DateTime t2) {
return t1.InternalTicks < t2.InternalTicks;
}
[TargetedPatchingOptOut("Performance critical to inline across NGen image boundaries")]
public static bool operator > (DateTime t1, DateTime t2) {
return t1.InternalTicks > t2.InternalTicks;
}