我有一个存在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);
    }
}

09-10 08:53