Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/330.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查询,我试图得到每天ActualSize的平均值。以下是我尝试过的,但我对这一行有问题: ActualSize = g.ActualSize.Average() 有人能告诉我如何将平均值作为g。这里不能选择平均值: var Disp = Start .Select(x => new StartDisplay { DateYYMMDD = x.DateYYMMDD,

我有这个LINQ查询,我试图得到每天ActualSize的平均值。以下是我尝试过的,但我对这一行有问题:

ActualSize = g.ActualSize.Average()
有人能告诉我如何将平均值作为g。这里不能选择平均值:

var Disp  = Start
            .Select(x => new StartDisplay
            {
                DateYYMMDD = x.DateYYMMDD,
                ActualSize = (x.ActualHeight * x.ActualWidth) / 1000
            })
            .GroupBy(x => x.DateYYMMDD)
            .OrderBy(g => g.Key)
            .Select(g => new StartDisplay
            {
                DateYYMMDD = $"20{g.Key.Substring(0, 2)}/{g.Key.Substring(2, 2)}/{g.Key.Substring(4, 2)}",
                ActualSize = g.ActualSize.Average()
            })
            .ToList());

您可以将表达式传递给
Average()
,指定要使用的属性。试试这个:

ActualSize = g.Average(s => s.ActualSize)
.GroupBy()
生成一个,它派生自
IEnumerable

因此,您可以直接对
g
中的值调用
Average()
函数:

ActualSize=g.Average(x=>x.ActualSize)