我正在尝试将此VB6代码转换为VB.NET但我似乎不明白这个代码是如何在Date中添加30的?
代码:
if Date1 > (Date2 + 30) then
'Condition
end if
问题:
- 代码计算2个日期的值是多少?(是
day > day
、month > month
还是year > year
?) - 30的值加在哪里?(
Day
、month
还是year
?) - 这个VB6代码与VB.NET的等价物是什么
-
它确定
Date1
中的日期是否大于Date2
中的日期加30天。 -
它增加了天数
-
您可以呼叫
dateVar.AddDays()
在VB6
/VBA
中,您可以向日期变量添加一个整数,它会向其中添加那么多天。因此,Date2 + 30
与DateAdd("D", 30, Date2)
相同
在VB.NET中,不支持Date+Integer
。所以你必须采用第二种方式来增加约会天数。
因此,您在VB.NET中的代码等效为:
If date1 > date2.AddDays(30) Then
'Condition
End If
仍然支持DateAdd("D", 30, Date2)
语法(尽管我不建议使用它)。因此,以下方法也适用:
If date1 > DateAdd(DateInterval.Day, 30, date2) Then
'Condition
End If