【问题标题】:Change values of datatable column conditionally using Linq [closed]使用 Linq 有条件地更改数据表列的值 [关闭]
【发布时间】:2014-10-03 05:51:28
【问题描述】:

我有一个数据表,其中一列具有 0/1 值。我需要使用 Linq (C#) 将所有 1 更改为“是”,将所有 0 更改为“否”。

【问题讨论】:

    标签: c# linq datatable .net-3.5


    【解决方案1】:

    LINQ 是语言集成的查询。它的目的是查询数据,而不是更改数据。所以,对于这个任务,你应该使用简单的循环:

    foreach(DataRow row in table.Rows)
    {
       string value = row.Field<string>("foo") == "0" ? "No" : "Yes";
       row.SetField("foo", value);
    }
    

    【讨论】:

      【解决方案2】:

      使用 linq 投影:

      var results = from p in myDataTable.AsEnumerable()
                    select new{ yesno = p.Field<int>("yesno") == 1 ? "Yes" : "No", otherField = p.Field<string>("otherField")};
      

      【讨论】:

        【解决方案3】:

        “数据表”是什么意思? ADO .net DataTable 对象或数据库中的实际表?

        如果它表示数据库中的实际表,那​​么您使用什么来加载它,例如 Entity Framework 或 Linq to SQL 或存储过程?

        【讨论】:

        • 澄清问题应张贴在 OP 问题的 cmets 中。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-02-09
        • 1970-01-01
        • 2013-06-24
        • 2023-03-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多