以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]天数计算  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=179630)

--  作者:jygyyl
--  发布时间:2022/8/31 17:59:00
--  [求助]天数计算
Select Case e.DataCol.name 
    Case "检测时间"
        If e.DataRow.IsNull("检测时间") Then
            e.DataRow("距今天数") = Nothing
        Else
            Dim tp As TimeSpan = Date.Today - CDate(e.DataRow("检测时间"))
            e.DataRow("距今天数") = tp.TotalDays()
        End If
End Select

上面代码出现距今天数=-1的问题,求老师指点!谢谢!

--  作者:有点蓝
--  发布时间:2022/9/1 8:43:00
--  
"检测时间"大于今天就是这情况


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看


--  作者:jygyyl
--  发布时间:2022/9/1 9:21:00
--  回复:(有点蓝)"检测时间"大于今天就是这情况[uploa...
从数据来看,检测时间是当天12点之前的为0,之后的为-1。
--  作者:有点蓝
--  发布时间:2022/9/1 9:31:00
--  
四舍五入了,TotalDays是一个双精度值,"距今天数"是整数列吧

Dim sp As TimeSpan = Date.Today - #09/01/2022 11:59#
Output.Show(sp.TotalDays)