以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  除以怎么写  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=39719)

--  作者:baixiaobai
--  发布时间:2013/8/31 0:38:00
--  除以怎么写
弱弱的问句~~

If e.DataCol.Name = "房费"
If e.DataRow.IsNull("房费") Then
        e.DataRow("日均价") = Nothing
Else
   e.DataRow("日均价") = e.DataRow("房费")/e.DataRow("住几天")
End If
End If

这样写不对的吗??

.NET Framework 版本:2.0.50727.5472
Foxtable 版本:2013.8.22.1
错误所在事件:表,客房登记表, DataColChanged
详细错误信息:
调用的目标发生了异常。
值对于 Int32 太大或太小。不能在 日均价 列中存储 <正无穷大>。所需类型是 Int32。
值对于 Int32 太大或太小。

Select Case e.DataCol.Name
    Case "房费","住几天"
        Dim drf As DataRow = e.DataRow
        If drf.IsNull("房费") OrElse drf.IsNull("住几天") Then
            drf("日均价") = Nothing
        Else
            Dim tpf As Integer = drf("房费") / drf("住几天")
            drf("日均价") = tpf
        End If
End Select

这样也不行~~555,到底怎么写呀~
[此贴子已经被作者于2013-8-31 0:51:36编辑过]

--  作者:yan2006l
--  发布时间:2013/8/31 3:18:00
--  

问题不在代码,而是答案吧?

你那个住几天等于0,任何数除以0都等于"正无穷大".