c# - 动态选择和更新 LINQ 结果集中的列值

标签 c# asp.net linq-to-sql dynamic-linq

我有一个场景,其中存在一个 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);
    }
}

关于c# - 动态选择和更新 LINQ 结果集中的列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5993889/

相关文章:

c# - ToolbarItem 图标维度

c# - 如何处理复选框列表?

javascript - 在javascript中同步两个滚动条

c# - 如何在 HTML head 中查找和删除 CSS 引用?

c# - 通过 id 获取项目并使用自动映射器将其标题映射到字符串

c# - TransactionScope 与 LINQ to SQL 中的事务

c# - 如何不从 linq 查询返回 {ModuleName = Admin}?

c# - ListView 控件中的闪烁(OwnerDraw、Virtual)

c# - 如何在 ASP.NET 中显示来自 C# 的警告框?

c# - 具有 LinQ 相关查询的 MySQL Entity Framework 未执行