Bifrost icon indicating copy to clipboard operation
Bifrost copied to clipboard

Come up with a concept for dealing with specifics for Query Source

Open einari opened this issue 7 years ago • 0 comments

Today we have a system based on providing the capability of metadata related to things like paging. We call this QueryProviders. This should probably be called more specific what it actually does; provide the metadata hook for querying. The QueryProvider is linked to the return type of the IQueryFor<> implementation.

The query source, e.g. SQL, DocumentDB, Mongo or similar should have a hook into this providing capabilities like tell wether or not paging is possible. Another aspect is then streaming rather than paging (see #804).

The case is basically that you might want to use IQueryable as your return type, but the actual source has not necessarily support for all scenarios that the QueryProvider today assumes is there. We've also seen that there are differences in how something like paging is implemented per source - this was evident when implementing support for Oracle; we couldn't do a .Skip().Take() out of the box - but had to add something specific.

einari avatar Apr 13 '17 10:04 einari