Foxtable(狐表)用户栏目专家坐堂 → [求助]时间计算经常报错,怎么避免


  共有2438人关注过本帖树形打印复制链接

主题:[求助]时间计算经常报错,怎么避免

帅哥哟,离线,有人找我吗?
wldhj
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:341 积分:3930 威望:0 精华:0 注册:2013/12/26 18:44:00
[求助]时间计算经常报错,怎么避免  发帖心情 Post By:2020/1/10 16:31:00 [只看该作者]

Dim time As String = e.PostValues("time")
Dim t As Integer=(Date.Now - CDate(time)).TotalSeconds

这个e.PostValues("time")也是通过 Date.Now生成传到前端,再通过jaxa传过来的

大部分运行正常,偶尔报
Exception has been thrown by the target of an invocation.
Conversion from string "" to type 'Date' is not valid.
怎么避免这种情况?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106209 积分:540168 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/1/10 16:39:00 [只看该作者]

这种提示就是前端没有传值回来导致的,也就是e.PostValues("time")没有值,比较严谨的用法应该使用TryParse转换:http://www.foxtable.com/webhelp/topics/0324.htm

Dim time As String = e.PostValues("time")
dim d as date
if date.TryParse(time,d) then
Dim t As Integer=(Date.Now - d).TotalSeconds
else
msgbox(“出错,非法时间格式”)
end if

 回到顶部