IQueryable vs IQueryable

前端 未结 2 599
隐瞒了意图╮
隐瞒了意图╮ 2020-12-19 09:36

I\'m simply wondering why there is a IQueryable version without the generic capability ?

相关标签:
2条回答
  • 2020-12-19 10:06

    I imagine it's the same reason as Jon Skeet gives in Difference between IEnumerable and IEnumerable<T>? , to allow use in a foreach loop. IQuerable would be castable to IEnumerable, whereas IQueryable<T> would not.

    Also see Marcin's answer about use in dynamic query building scenarios.

    0 讨论(0)
  • 2020-12-19 10:15

    The generic IQueryable<T> is the one you use most often in method signatures and the like. The non-generic IQueryable exist primarily to give you a weakly typed entry point primarily for dynamic query building scenarios.

    by Matt Warren from LINQ: Building an IQueryable Provider - Part I

    You should use generic IQueryable<T> everywhere it's possible.

    0 讨论(0)
提交回复
热议问题