我在网上发现了一些代码,我理解前两行。特定数据 type被缓存并存储在下面模型的两个属性中。
model.payment = (List<CompInfor>)HttpRuntime.Cache[cacheKey + "_received"];
model.FilteredPayment = (List<CompInfor>)HttpRuntime.Cache[cacheKey + "_received"];
但是我不理解下面这一行,因为我从未编写过如下代码。 请问这行是做什么的?这是什么意思?我知道你可以使用IQueryable来节省大量资源。
IQueryable<CompInfor> payment = model.FilteredPayment.AsQueryable<CompInfor>();
答案 0 :(得分:0)
它只返回IQueryable<T>
interface的一个实例,该实例将利用查询提供程序对相关对象(在您的情况下为model.FilteredPayment
列表)进行操作。当你在本地对List
采取行动时似乎没有多大意义,但是(在一个例子中)在实体框架的情况下,你构建查询语句通过SQL对数据库执行, Linq to Entities查询提供程序将IQueryable
处理到适当的SQL语句中,以便对数据库执行并处理结果。