gpt4 book ai didi

linq-to-sql - .ToList().AsQueryable() 的使用

转载 作者:行者123 更新时间:2023-12-04 03:27:20 24 4
gpt4 key购买 nike

我遇到了以 (...).ToList().AsQueryable() 结尾的 linq 查询。我知道分别使用 .ToList() 和 .AsQueryable() 。但是,如果两者结合,结果会怎样呢?我们什么时候需要组合它们?我希望这个问题不是太垃圾的问题。提前致谢。

第一个查询:

Dim costAmounts = (From t In model.OrderTrades                            
Join o In model.Orders On t.OrdNum Equals o.OrdNum
Where o.ClientCode = clientNumber And o.BookDate = sysrec.ETicketsBookDate
Group t By t.Buy, t.OrdNum Into Amount = Sum(t.BuyAmount) _
Select OrdNum = OrdNum, Currency = Buy, SellAmount = Amount).ToList().AsQueryable()

第二个查询:
 Dim orders = (From a In costAmounts _
Group Join s In settlements On s.Currency Equals a.Currency _
And s.OrdNum Equals a.OrdNum Into amounts = Group _
From g In amounts.DefaultIfEmpty _
Where g Is Nothing OrElse a.SellAmount - g.Paid <> 0 _
Select OrdNum = a.OrdNum Distinct).ToList()

最佳答案

您永远不需要将两者结合起来。
AsQueryable ToList 是否可以为您提供懒惰的评估功能?完全否定。

因此,LINQ 查询被迫由 ToList 评估。 ,然后,内存列表被转换为 IQueryable为了允许......查询它。而不是构建查询并仅根据需要获取结果。

关于linq-to-sql - .ToList().AsQueryable() 的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6430936/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com