在 C# DAL 中,如果我返回 IQueryable 而不是 IList,我会得到什么优势,我没有使用 Entity Framework/N Hibernate,只是普通的旧 ADO.Net..
最佳答案
我相信返回 IQueryable 允许惰性枚举,而返回 IList 则不允许。
如果返回 IList,则在 DAL 返回 IList 时对数据库执行查询。返回 IQueryable,可以传递返回值,并且仅当您检查 IQueryable 的内容时才执行查询。
(这是基于我对 LINQ to SQL 的经验 - 但我没有根据权威来源检查过)
关于c# - IQueryable<T> 相对于 IList<T> 的优势,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4444380/