Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将两个linq查询放入一个列表框中_C#_Linq - Fatal编程技术网

C# 将两个linq查询放入一个列表框中

C# 将两个linq查询放入一个列表框中,c#,linq,C#,Linq,我需要在一个列表框中获取两个LINQ查询的值。目前,我有两个单独的listboxe的并排,所以它的工作,但不是最佳的。数据本质上是一个名称列表以及与这些名称相关的值列表 var getTotalsColumn = from p in dataTable select p.TOTALS; foreach (var totals in getTotalsColumn) { employeeByIspListBox.Items.

我需要在一个列表框中获取两个LINQ查询的值。目前,我有两个单独的listboxe的并排,所以它的工作,但不是最佳的。数据本质上是一个名称列表以及与这些名称相关的值列表

        var getTotalsColumn = from p in dataTable select p.TOTALS;

        foreach (var totals in getTotalsColumn)
        {
            employeeByIspListBox.Items.Add(totals);

        }
            var getNamesColumn = from p in dataTable select p.NAME;

        foreach (var names in getNamesColumn)
        {
            listBox1.Items.Add(names);
        }
我如何将其组合起来,将例如
johndoe:21
放入一个列表框中。 总计和名称都返回类型字符串。

更改查询:

var values = from p in dataTable
             select p.NAME + " : " + p.TOTALS;

listBox1.Items.AddRange(values.ToArray());
更改您的查询:

var values = from p in dataTable
             select p.NAME + " : " + p.TOTALS;

listBox1.Items.AddRange(values.ToArray());

听起来你只是想:

var items = dataTable.Select(p => string.Format("{0} : {1}", p.NAME, p.TOTALS));
listBox1.Items.AddRange(items.ToArray());

听起来你只是想:

var items = dataTable.Select(p => string.Format("{0} : {1}", p.NAME, p.TOTALS));
listBox1.Items.AddRange(items.ToArray());

作为补充说明。如果我想按“总计”列中的数字对列表框中的项目进行排序,该怎么办?我想我必须提前声明数组并使用Orderby方法?有什么提示吗?@Nabbic:没有,你只需要使用
dataTable.OrderBy(p=>p.TOTALS)。选择(p=>…)
谢谢你的回复。我确实试过这个。我从
var items=dataTable.OrderBy(p=>p.TOTALS)得到了意外的结果。选择(p
=>string.Format(“{0}:{1}”,p.NAME,p.TOTALS))我有数字1到16,它从上到下返回1,10,12,13,14,16,2,3,4,6,7,8。我在想,因为它们实际上不是整数,而是字符串?@Nabbic:你是说
总计的类型是
字符串
?哎呀!尝试解决这个问题-这自然是数字数据,对吗?因此,将其设置为数字类型。否则您需要解析它…我也这么想,并且在我的待办事项列表中,我将把它移到我的待办事项列表中更高的优先级。谢谢:)作为补充说明。如果我想按“总计”列中的数字对列表框中的项目进行排序,该怎么办?我想我必须提前声明数组并使用Orderby方法?有什么提示吗?@Nabbic:没有,你只需要使用
dataTable.OrderBy(p=>p.TOTALS)。选择(p=>…)
谢谢你的回复。我确实试过这个。我从
var items=dataTable.OrderBy(p=>p.TOTALS)得到了意外的结果。选择(p
=>string.Format(“{0}:{1}”,p.NAME,p.TOTALS))我有数字1到16,它从上到下返回1,10,12,13,14,16,2,3,4,6,7,8。我在想,因为它们实际上不是整数,而是字符串?@Nabbic:你是说
总计的类型是
字符串
?哎呀!尝试解决这个问题-这自然是数字数据,对吗?因此,将其设置为数字类型。否则您需要解析它…我也这么想,并且在我的待办事项列表中,我将把它移到我的待办事项列表中更高的优先级。谢谢:)