Are there any IQueriable implementaions for linq-to-objects that perform better than the default O(n) linear search performance that you get when calling myEnumerable.AsQueriable()?
I've had a look at http://www.codeplex.com/i4o/ which has better performance, but seems to rely on using extension methods on IndexedCollection rather than making IndexedColleciton implement IQueriable.
I'm keen to keep my interface returning IQueriable<T> as I don't want anyone to know whether they are hitting a cache or a db.