LINQ is just an &quot;express your query as an AST&quot; approach. Sure LINQ presents its self as a DSL on top of that AST ( which is exactly what SQL is at the end of the day ), but there are libraries for MongoDB that allow you to do the same thing. There is even a LINQ driver for MongoDB[1]. What you are missing is that by having the lowest common denominator be the AST instead of a DSL you have removed a huge burden from both the server and client side of the operation. From that AST you can build any kind of client side interface without worry about how to parse or compile the result into a specific textual language, even plain old SQL[2] can be used if you like your sever spending its clock cycles parsing text.<p>1. <a href="http:&#x2F;&#x2F;mongodb.github.io&#x2F;mongo-csharp-driver&#x2F;2.1&#x2F;reference&#x2F;driver&#x2F;crud&#x2F;linq&#x2F;" rel="nofollow">http:&#x2F;&#x2F;mongodb.github.io&#x2F;mongo-csharp-driver&#x2F;2.1&#x2F;reference&#x2F;d...</a>
2. <a href="https:&#x2F;&#x2F;www.progress.com&#x2F;connectors&#x2F;mongodb" rel="nofollow">https:&#x2F;&#x2F;www.progress.com&#x2F;connectors&#x2F;mongodb</a>