Just a heads-up ... I spent hours working through This Walkthrough <http://msdn.microsoft.com/en-us/library/vstudio/bb546158(v=vs.110).aspx> to see what it necessary to create a simple LINQ provider. This very primitive example that wraps a web service results in about 10 non-trivial classes with about 500 lines of statements. Most of the code is dense with generics, casts and classes that the average developer probably wouldn't know exist. The sample contains far less than I had hoped to implement even for my most modest needs. I still can't properly understand about 10% of the sample code.
Clearly, this area of coding is quite specialised, giving you a glimpse of how compilers work. Given the power of LINQ I can understand why it's so difficult to form and process general expressions, but sadly there are so many arcane classes and techniques involved that I think I will abandon my attempts to create a LINQ provider for now due to lack of spare time to learn something that is too specialised to be of use in general app development. Congratulations to these guys however: Why I hate implementing Linq <http://ayende.com/blog/4675/why-i-hate-implementing-linq> Developing Linq to LLBLGen Pro <http://weblogs.asp.net/fbouma/developing-linq-to-llblgen-pro-day-1> (who claims to be the only known civilian who wrote a complete provider) *Greg K*