数据表选择产生不正确的列连接
Posted
技术标签:
【中文标题】数据表选择产生不正确的列连接【英文标题】: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();
提前致谢
【问题讨论】:
【参考方案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”以上是关于数据表选择产生不正确的列连接的主要内容,如果未能解决你的问题,请参考以下文章