我对'IndexOutOfRangeException'有点麻烦。我认为这是因为当代码试图从数据库中获取DateModified col时,它有时包含NULLS(用户自创建页面以来并不总是更新页面)。
这是我的代码;
s = ("select datemodified, maintainedby, email, hitcount from updates where id = @footid")
Dim x As New SqlCommand(s, c)
x.Parameters.Add("@footid", SqlDbType.Int)
x.Parameters("@footid").Value = footid
c.Open()
Dim r As SqlDataReader = x.ExecuteReader
While r.Read
If r.HasRows Then
datemodified = (r("DateModified"))
maintainedby = (r("maintainedby"))
email = (r("email"))
hitcount = (r("hitcount"))
End If
End While
c.Close()
我想(在msdn之后)添加;
If r.HasRows Then
End If
会解决问题,但是在添加之后到目前为止我仍然得到相同的旧IndexOutOfRangeException
(ps,我已尝试将datemodified as string / datetime)
答案 0 :(得分:1)
更改
datemodified = (r("DateModified"))
到
datemodified = (r("datemodified"))
工作?
答案 1 :(得分:1)
我试图通过传入空值,空集来重新创建问题。我无法在您提供的代码示例中重新创建它。您是否介意发布更多代码,甚至整个页面?是否有错误发生的行号?我想进一步深入研究。
答案 2 :(得分:1)