Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.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#图表绑定到var_C#_Asp.net_Charts_Var_Asp.net Charts - Fatal编程技术网

C#图表绑定到var

C#图表绑定到var,c#,asp.net,charts,var,asp.net-charts,C#,Asp.net,Charts,Var,Asp.net Charts,我从linq查询中得到了具有以下结构的var t: [0] = { Type = "K", Count = 1 } [1] = { Type = "Z", Count = 8 } 现在我想优雅地将它绑定到我的图表上(没有foreach)。我尝试这样做: series1.Points.DataBindXY(t. ????, t.????); 但我不知道如何获取var的“第一列”和“第二列”。 请帮忙 编辑: 我的linq查询: var t

我从linq查询中得到了具有以下结构的var t:

    [0] = { Type = "K", Count = 1 }
    [1] = { Type = "Z", Count = 8 }
现在我想优雅地将它绑定到我的图表上(没有foreach)。我尝试这样做:

    series1.Points.DataBindXY(t. ????, t.????);
但我不知道如何获取var的“第一列”和“第二列”。 请帮忙

编辑: 我的linq查询:

                var t= (from oAction in Actions
                    group oAction by oAction.Type.Name into g
                    select new { Type = g.Key, Count = g.Count() }).ToArray();

我从未使用过ASP.Net图表,因此我不确定这是否可行,但我认为应该:

series1.Points.DataBindXY(t.Select(x => x.Type), t.Select(x => x.Count));
这将指定一组
Type
值作为x值,一组
Count
值作为y值

var t= (from oAction in Actions
                    group oAction by oAction.Type.Name into g
                    select new { Type = g.Key, Count = g.Count() }).ToArray();

好的,您返回的是“匿名”类型。您肯定可以访问t.Type或t.Count,但问题是您只能在定义此LINQ查询的方法中执行此操作。匿名类型的范围仅限于在其中定义它的方法。您可以通过使用“dynamic”关键字来克服这个限制。但是我还没有尝试过这个,所以不能100%确定。

为什么不需要foreach循环?你正在收集。要么你的控件应该足够聪明,可以选择正确的参数,要么你必须在集合中枚举。谢谢你的回答。我能用我的var(仅类型)的“第一列”轻松创建一个数组或列表吗。你能发布你的LINQ查询吗?基本上想看看您的LINQ查询是否返回匿名类型?“Var”是一个隐式类型变量,它是编译时计算的。您可以很容易地看到查询返回值的实际类型。我已经编辑了我的问题,添加了linq。如果我得到一个字符串数组,类型为,数组od int为,计数为,这将非常有用