我已经开始研究基于 The Wayward WebLog http://blogs.msdn.com/b/mattwar/archive/2008/11/18/linq-links.aspx的 linq 提供程序。
我有这个代码
DbQueryProvider provider = new DbQueryProvider();
Query<Product> productQuery = new Query<Product>(provider);
IEnumerable<Product> preProductList = productQuery.Where(p => p.Id < 0).Take(4);
ICollection<Product> productList = preProductList.ToList();
我在寻找 Take(4) 时遇到了很多问题,我想将其翻译成 Top(4) sql 语句。
在我看来, .Take(4) 只是在表达式树中设置为常量,所以我无法知道它是否是 Take 函数。
你们中的任何人..以及关于如何根据表达式制作 TakeFinder 的想法吗?