This was a series of articles written by Matt Warren about writting LINQ Query Provider, I've formatted the content in markdown and have it here in one place for easy reference.
- Reusable IQueryable base classes ✔
- Where and reusable Expression tree visitor ✔
- Local variable references ✔
- Select ✔
- Improved Column binding ✔
- Nested queries ✔
- Join and SelectMany ✔
- OrderBy ✔
- Removing redundant subqueries ✔
- GroupBy and Aggregates ✔
- More of everything ✔
- Relationships and the IQ Toolkit
- Updates and Batch Processing
- Mapping and Providers
- Transactions, Sessions and Factories
- Performance and Caching
- Automatic Caching and Loading Policies
to follow up with articles, here is the old source code:
and the sample db here.
and you can get latest version from its repo.