2012-02-03 139 views

回答

0

我以前沒見過這個項目,但它看起來好像只是使用CodeDOM將C#查詢編譯爲動態程序集。下面是它如何工作的一個博客帖子:

http://kenanbek.com/site/post/dynamic-linq-queries-build-linq-queries-from-text-at-runtime/

如果使用動態編譯那麼它可能不會有很多限制。當然,它只能訪問您傳遞給LinqTextQueryBuilder.SetSource()方法的對象以外的項目。

我在一個我工作的項目中使用了類似的動態Linq,但它更多的是解析where子句表達式等,而不是整個查詢。它的工作原理略有不同,它將一個類似C#的表達式直接分析到表達式樹中,而不是使用CodeDOM和動態程序集作爲中介。因此,它可能會更快一些,但更有限。

http://weblogs.asp.net/scottgu/archive/2008/01/07/dynamic-linq-part-1-using-the-linq-dynamic-query-library.aspx