如何解决将linq结果中的缺失周填充为0
我有这种ViewModel,是否有一种简单的方法来填补缺席的星期,所以代替
- 第17周/ 30.000
- 第25周/ 464.000
我有
- 第17周/ 30.000
- 第18周/ 0
- 第19周/ 0
- ...
- 第25周/ 464.000
https://i.imgur.com/QJHhKE5.png
解决方法
您必须左联接数据库项
var dbItems = query.ToList();
var allWeeks = Enumerable.Range(0,25);
var filledGaps =
from w in allWeeks
join item in dbItems on w equals dbItem.Week into j
from item in j.DefaultIfEmpty()
select new ViewModel
{
Week = w,Value = item?.Value ?? 0
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。