Mos*_*afa 0 asp.net ilist iqueryable linq-to-sql
我有我的BLL一些方法,从数据库中获取一些记录,并通过它结合数据控件如GridView或...与UI
是否方法我可以选择我的返回数据类型IQueryable<t>或Ilist<t>.
我的问题是哪一个对我更好,为什么?其实我不知道这两种类型之间的区别,我不知道哪种情况最适合哪种情况?
谢谢
不同之处在于它IList<T>代表了一个实际的结果列表.它将被"物化" - 从数据库中提取到内存中.(理论上它当然只是一个界面 - 它仍然可以推迟一切...)
IQueryable<T>代表一个查询 - 例如,您之后仍可以编写额外的查询位.然后,您可以通过询问结果来评估查询.这将使用延迟执行,仅在实际需要时请求结果.
至于你应该返回...如果你只想直接绑定到UI,将它转换为列表可能是有意义的,这样你就可以更好地控制查询实际执行的时间.另一方面,如果您希望能够调整查询,使用IQueryable<T>将为调用者提供更大的灵活性.
| 归档时间: |
|
| 查看次数: |
299 次 |
| 最近记录: |