我有一个数据集。我添加了一个列“标签”。我需要运行一个函数来更新“Tags”列中每一行的值。这是我到目前为止尝试过的,告诉我我错过了什么。
public System.Data.DataSet PopulateDataGrid(int nViewMode)
{
System.Data.DataSet ds = _data.GetGridView(nViewMode)
ds.Tables[0].Columns.Add("Tags", typeof(string));
foreach (System.Data.DataRow dr in ds.Tables[0].Rows)
{
dr.BeginEdit();
dr.ItemArray.SetValue(_dataFactory.GetPartTags(_dataFactory.ExecuteScalar("SELECT POSITION FROM PARTS WHERE PART_ID = " + dr.ItemArray.GetValue(0)).ToString()), dr.ItemArray.Length - 2);
dr.SetModified();
dr.EndEdit();
dr.AcceptChanges();
}
ds.AcceptChanges();
return ds;
}
using System.Data
也不必把它放在我的代码中,但这是许多使用它的函数中唯一的一个,所以我不想这样做(如果加载时间没有损失,那么我可以这样做)。我希望我只需要运行一个查询,就这样,但这需要填写代码。如果有人能帮忙,那就太好了。谢谢。
我也证实了这一点
_dataFactory.GetPartTags(_dataFactory.ExecuteScalar("SELECT POSITION FROM PARTS WHERE PART_ID = " + dr.ItemArray.GetValue(0)).ToString())
返回所需的值。它只是在DataGridView中显示为空白。列在那里,但没有填充任何内容。