【发布时间】:2010-07-26 17:25:35
【问题描述】:
我的应用程序使用 For...Next 循环将电子表格读入 DataSet,然后根据搜索条件(搜索词和日期范围)的结果显示其中的信息。
我的数据有问题,如果我运行搜索应该返回电子表格中的前 400 行,我只会得到大约 200 个结果。我知道搜索应该返回 400 行,因为我在运行搜索之前在电子表格中检查了它。
我认为我的问题可能是由我的日期比较引起的。我认为问题可能在于我正在比较 String 值,所以如果有人可以向我展示一种更有效的比较日期的方法,那就太好了。
这是我的代码:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If ListBox1.Items.Count <> 0 Then : ListBox1.Items.Clear() : End If
Dim j As Integer = 0
If TextBox1.Text.Length = 4 Then
For i As Integer = 0 To CallData.Tables(0).Rows.Count - 1
'MsgBox(CallData.Tables(0).Rows(i)(2) & " - FROM( " & DateTimePicker1.ToString & " ) TO( " & DateTimePicker2.ToString & " )")
If CallData.Tables(0).Rows(i)(3).ToString = TextBox1.Text _
And CallData.Tables(0).Rows(i)(2).ToString > DateTimePicker1.Value.ToString _
And CallData.Tables(0).Rows(i)(2).ToString < DateTimePicker2.Value.ToString Then
ListBox1.BeginUpdate()
ListBox1.Items.Add(CallData.Tables(0).Rows(i)(2).ToString)
ListBox1.EndUpdate()
j = j + 1
End If
Next
Label1.Text = j & " records found."
End If
End Sub
【问题讨论】:
标签: vb.net datetime date dataset