MongoDB C#LINQ-对子文档求和(通过AsQueryable)

本文关键字:通过 AsQueryable 求和 文档 C#LINQ- MongoDB | 更新日期: 2023-09-27 18:20:34

我尝试在LINQ中使用函数SUM,但不能很好地处理子文档。有人尝试对子文档使用SUM吗?。

我的示例查询:

var collection = database.GetCollection<Order>("Order").AsQueryable();
var query = from o in collection
            from p in o.OrderItems
            select p;
var query2 = from orderItem in query
             group orderItem by orderItem.ProductId into g
             select new 
             {
                  ProductId = g.Key,
                  TotalAmount = g.Sum(x=>x.UnitPriceExclTax)
             };

TotalAmount,始终返回值0。

谢谢,

MongoDB C#LINQ-对子文档求和(通过AsQueryable)

Mongo c#LINQ驱动程序不正确支持SUM。https://jira.mongodb.org/browse/CSHARP-592

最好使用带有聚合和的MongoQuery。有关详细用法和示例,请参阅链接。https://docs.mongodb.org/manual/reference/operator/aggregation/sum/