我有一个表,名为GPS,需要按时间顺序进行处理,于是我就按时间排序读出数据集,然后再取里面的记录,但是不能得到一条记录的下一条。string str = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\复件 DB.mdb";                    
            OleDbConnection thisConnection = new OleDbConnection(str);
            thisConnection.Open();// open the mdb
            string str_sql = @"SELECT PT_CODE,VT_X,VT_Y,VT_DATE FROM GPS ORDER BY VT_DATE ASC";
            OleDbDataAdapter thisAdaper = new OleDbDataAdapter(str_sql, thisConnection);
            OleDbCommandBuilder thisBuider = new OleDbCommandBuilder(thisAdaper);
            DataSet thisDataSet = new DataSet();
            thisAdaper.Fill(thisDataSet, "GPS");
            int i=0;
            foreach (DataRow datarow in thisDataSet.Tables["GPS"].Rows)
            {
                i++;
                double x_1 = Convert.ToDouble(datarow["VT_X"]);
                double y_1 = Convert.ToDouble(datarow["VT_Y"]);               
                DataRow next_row = thisDataSet.Tables["GPS"].Rows[i + 1];
                double x_2 = Convert.ToDouble(next_row["VT_X"]);
                double y_2 = Convert.ToDouble(next_row["VT_Y"]);
                double k_pt = (y_1-y_2)/(x_1-x_2);//两点的斜率
                if (i == 2)//用来调试的
                {
                    MessageBox.Show("x1:"+x_1.ToString()+" y1:"+y_1.ToString());
                    MessageBox.Show("x2:" + x_2.ToString() + " y2:" + y_2.ToString());
                    MessageBox.Show(k_pt.ToString());
                }
                
            }
红色部分是我采取的方法,既按当前行数+1取得下一条,但是结果发现她不是按我排序的行数算的,是按原表的函数排的!怎么办?