我可以使用Entity SQL查询IQueryable <t>?</t>

时间:2011-03-17 10:58:58

标签: c# .net entity-framework linq entity-sql

我知道我可以使用ESQL查询ObjectSet of T,但是我可以使用它来查询任意IQueryable of T吗?

修改

示例:

var originalQuery = from t in Transactions where t.Date < DateTime.Now select t;

// query is now an IQueryable<Transation>. Now I want to do some dynamic manipulations
// on originalQuery by using ESQL

var manipulationQuery = "select t.a as A from T as t";

// I want to execute manipulationQuery over the originalQuery, something like this:
// (this is a hipotetical method. It does not exist)
var transactions = context.RunESQLOverIQueryable(originalQuery, manipulationQuery).ToList();

编辑2

实际上用例如下:我需要一个程序员来编写一个返回表示核心查询的IQueryable(T)的方法。此查询将提供给ReportControl,该ReportControl必须对此查询执行一系列分组,以及选择必须检索哪些列等。我认为通过ESQL动态操作核心查询是一个不错的选择。我也不确定。

1 个答案:

答案 0 :(得分:1)

检查Dynamic Linq库。它是samples for Visual studio 2008的一部分,但它也适用于2010年。