我想在某些条件下更新datatable
(dtTaskandBugs)
当id(这是Datatable的一列)作为参数传递给function
GetStoryid时,想要更新数据表中所有行的storyid。
这是我的代码,它不起作用(没有发生)
dtTaskandBugs.Select(string.Format("Storyid = '{0}'", dtTaskandBugs.Rows)).ToList<DataRow>().ForEach(
r =>
{
r["Storyid"] = GetStoryid(r["Id"]);
});
答案 0 :(得分:1)
错误在于:
string.Format("Storyid = '{0}'", dtTaskandBugs.Rows)
您将此表中的行数作为参数传递给过滤行的DataTable.Select
,因此可能不会返回任何行。
我建议使用简单的foreach
循环,因为您要更新所有行:
foreach(DataRow row in dtTaskandBugs.Rows)
row ["Storyid"] = GetStoryid(row["Id"]);