【问题标题】:Datatable select producing incorrect concatenation of columns数据表选择产生不正确的列连接
【发布时间】:2014-04-25 07:55:31
【问题描述】:

从 C# 中的数据表中选择数据时出现问题。我正在用这个填充一个组合框。第 1 列重复了不同的描述。这是我正在使用的代码。

var comboItems = this.coreDataSet.Tables["TimesheetDataTable"].AsEnumerable()
                          .Select(row => row.Field<string>("column 1") + " (" + row.Field<string>("description") + ")")
                          .Distinct()
                          .ToList();

提前致谢

【问题讨论】:

    标签: c# mysql datatable


    【解决方案1】:

    您的 select 语句完全符合我的预期。

    用 EntityFramework 而不是 DataTables 填充组合框的代码:

    using (var timesheetDb = new TimeSheetContext())
    {
        var comboItems = timesheetDb.TimeSheets.Select(row => row.Column1 + " (" + row.Description + ")").Distinct().ToList();
    
        foreach (var item in comboItems)
        {
            TestCombo.Items.Add(item);
        }
    }
    

    您的数据是什么? .Distinct() 你的目标是什么?

    【讨论】:

    • 我的目标是为每个不同的列 1 只有一个条目。我知道我必须对该列进行分组,但我无法正常工作
    • 数据是一组项目代码,具有匹配的描述作为单独的字段。我试图在括号中获取每个不同项目代码的描述,以便用户知道它是什么项目。
    • 我的想法是在实体框架中执行mysql查询“Select concat(projectcode, '(', description, ')') from table group by projectcode”
    猜你喜欢
    • 2015-04-02
    • 1970-01-01
    • 1970-01-01
    • 2023-04-08
    • 2016-11-23
    • 2020-06-10
    • 1970-01-01
    • 1970-01-01
    • 2014-10-06
    相关资源
    最近更新 更多