我想使用DataTable
和Linq
更新Lambda Expression
中的记录。我可以更新一列如下
dtProduct.AsEnumerable().Where(i => i.Field<long>("ProductId") == Convert.ToInt64(id)).First().SetField("Qty", qty);
无法理解如何更新其他人:(。我最终为每一栏写了几次更新。
答案 0 :(得分:3)
我最终为每一列写了几次更新。
您的代码由两部分组成:
您可以通过引入变量来重用定位实例的结果:
var inst = dtProduct.AsEnumerable().Where(i => i.Field<long>("ProductId") == Convert.ToInt64(id)).First();
现在您可以多次致电SetField
:
inst.SetField("Qty", qty);
inst.SetField("Price", price);
inst.SetField("Weight", weight);