我有这个对象:
public class BtnCountViews
{
public BtnCountViews()
{
}
public int DayOfYear { get; set; }
public int Month { get; set; }
public int Year { get; set; }
public int BtnCount { get; set; }
public int Views { get; set; }
}
我想做的是从这些对象的列表中获取 Views 的平均值,其中 Month = 5。
这是我获取列表数据的地方:
public static List<BtnCountViews> btnCountViewsList = db2.Query<BtnCountViews>(sql);
最佳答案
尝试类似的方法;
var avg = btnCountViewsList.Where(x => x.Month == 5).Select(x => x.Views).DefaultIfEmpty(0).Average();
另外我建议您使用 DefaultIfEmpty
来处理可能的空集。否则如果 btnCountViewsList
为空,则抛出异常。
关于c# - 如何使用 LINQ 获取列表中属性的平均值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47766216/