我正在将一些DTS软件包从Visual Basic转换为C#,并想知道以下会产生什么@OldDate。我不是一个vb.net的家伙,真的没有时间玩这个。
datActionDate = Now()
intNumberOfDays = 365
businessDays = 0
Set .ActiveConnection = objConnection
.CommandType = 4
.CommandText = strStoredQuery
.Parameters.Append .CreateParameter("@OldDate",7,1,8,CDate(datActionDate))
.Execute
任何帮助都将不胜感激!
*编辑DatactionDate是DO循环的数字。Holidayls基本上是根据日期列表检查该日期
do until bdays = intNumberOfDays
datActionDate = DateAdd("d", -1, datActionDate)
if weekday(datActionDate) > 1 and weekday(datActionDate) < 7 then
if not holidayLs(datActiondate) then
businessDays = businessDays + 1
end if
end if
loop
在足够读取此代码的基本了解之后,我发现这个问题与语法有关,而更多地是关于通过逻辑工作。从今天起,@olddate最终将成为一个数字
DateAdd("d", -1, datActionDate)
正在从Datactiondate中减去定义为
的一天datActionDate = Now()
我不熟悉工作日(),这刚好获得了数字的一天。所以以下语句
if weekday(datActionDate) > 1 and weekday(datActionDate) < 7 then
基本上是在寻找不是星期六和周日的日子(一年中有105个 - 这将是今天的最低减少)
减去假期中的假期(大约有11个)在此行中
if not holidayLs(datActiondate) then
然后datactiondate = 2018年11月24日,星期六