Mehfuz shows how to create a custom LINQ provider using the open source project LINQExtender.
In my previous article – LINQ provider basics – I have explained how LINQ to Entity work. I used examples mostly from my LINQ.Flickr project. Although creating a provider is fun, there are some repetitive tasks along the way, like expression processing and data extraction. Therefore things could be much easier with a common framework that takes care of complexes and monotonous tasks, while developers are presented with a simple model, by which they can get going with their providers without any expression overhead.
LinqExtender exposes such model, which lets the developer focus only on the application logic – not on the query internals – while creating custom home made providers. It sits between the core LINQ framework and a custom provider.