动态选择和更新 LINQ 结果集中的列值
本文关键字:集中 结果 LINQ 选择 更新 动态 | 更新日期: 2023-09-27 17:56:16
我有一个存在 LINQ 结果集的方案;我使用了以下查询
var stockDetails = from d in db.BloodBanks
where d.bbUserName == Session["username"].ToString()
select d;
现在,我想使用此结果集并更新列的值。通过字符串变量动态选择列。
我尝试使用的代码是:
foreach (BloodBank b in stockDetails)
{
b.<--column name from string variable--> = TextBox1.Text;
}
请在这里帮助我如何实现这一目标。
您可以使用反射按名称获取字段,如下所示。
foreach (BloodBank b in stockDetails)
{
FieldInfo f = typeof(BloodBank).GetField("fieldName");
if (f != null)
{
f.SetValue(b, TextBox1.Text);
}
}
foreach (BloodBank b in db.BloodBanks.Where(d => where d.bbUserName == Session["username"].ToString())
{
b.col = TextBox1.Text;
}