datatable的select()结果,怎么获取行号啊?
datarow[]dr=tb.select(string);然后查出结果是一条记录,那怎么获取这个结果在哪个行呢?(我目的就是操作查询结果所在那行的数据!有么有别的方法呢...
datarow[] dr=tb.select(string);
然后查出结果是一条记录,那怎么获取这个结果在哪个行呢?
(我目的就是操作查询结果所在那行的数据!有么有别的方法呢?)
当然,用循环可实现!但这对大的数据量,速度比较慢!
哪位高手请教我一下啊! 展开
然后查出结果是一条记录,那怎么获取这个结果在哪个行呢?
(我目的就是操作查询结果所在那行的数据!有么有别的方法呢?)
当然,用循环可实现!但这对大的数据量,速度比较慢!
哪位高手请教我一下啊! 展开
1个回答
2013-08-06
展开全部
如果你只是要修改DataTable里的DataRow的话没有必要找到它的行号,直接在Select后得到的DataRow上修改就行了,它的修改会直接反映到DataTable上(其实就是直接修改了DataTable上的DataRow,这和数据库不一样不要弄混了),代码如下
private void button1_Click(object sender, EventArgs e)
{
DataTable dataTable = new DataTable();
dataTable.Columns.Add("ID");
dataTable.Columns.Add("Name");
for (int i = 1; i < 5; i++)
{
dataTable.Rows.Add(new object[] { i, i + 1000 });
}
DataRow[] dataRows = dataTable.Select("id > 2");
for (int i = 0; i < dataRows.Length; i++)
{
dataRows[i].ItemArray = new object[] { i + 100, i + 5000 };
}
}
private void button1_Click(object sender, EventArgs e)
{
DataTable dataTable = new DataTable();
dataTable.Columns.Add("ID");
dataTable.Columns.Add("Name");
for (int i = 1; i < 5; i++)
{
dataTable.Rows.Add(new object[] { i, i + 1000 });
}
DataRow[] dataRows = dataTable.Select("id > 2");
for (int i = 0; i < dataRows.Length; i++)
{
dataRows[i].ItemArray = new object[] { i + 100, i + 5000 };
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询