我想LINQ查询的数据表,以选择具有特定ID的名称,但它返回名称的长度不是字符串,这里是一些示例代码:LINQ查询数据表中返回不正确的结果
private void btnShow(object sender, EventArgs e)
{
DataTable CL = new DataTable();
DataRow rt;
CL.Columns.Add(new System.Data.DataColumn("ID", typeof(string)));
CL.Columns.Add(new System.Data.DataColumn("Name", typeof(string)));
for (int i = 0; i< dataGridView1.Rows.Count; i++)
{
rt = CL.NewRow();
rt[0] = dataGridView1.Rows[i].Cells[0].Value.ToString();
rt[1] = dataGridView1.Rows[i].Cells[1].Value.ToString();
CL.Rows.Add(rt);
}
var results = from myRow in CL.AsEnumerable()
where myRow.Field<string>("ID") == "1"
select myRow.Field<string>("Name").ToString();
dataGridView2.DataSource = results.ToList();
}
thanx
事先您的数据表中有什么内容? – LukeHennerley 2013-03-27 11:36:52
只有两列ID和名称 – user2102572 2013-03-27 11:38:17
由于返回数据本身就是字符串,所以在末尾不需要'ToString()'。 – 2013-03-27 11:38:22