实体框架SqlQuery返回匿名类型记录

时间:2015-02-08 17:45:03

标签: c# entity-framework-6

我正在编写一个灵活的报告系统。作为其中的一部分,我通过连接类似

来创建SQl语句

sql =“select * from a_v where ename = 1”

我想知道如何使用

db.Database.SqlQuery(sql)

返回匿名记录的集合,因此它非常灵活。

我找不到办法,因为它似乎是强类型的。

是否可以返回匿名类型记录。一个例子很棒

1 个答案:

答案 0 :(得分:0)

我可能错误地解释了你的目标,但听起来你想要使用投影。您可以从Linq返回匿名类型的列表。一个例子是:

var anonymousListOfBoxes =
   from b in CustomerBoxes
   select new {
        b.Customer,
        b.BoxID,
        b.Barcode
   };

现在,anonymousListOfBoxes将是System.Linq.IQueryable<(匿名)>。每个项目将有3个属性 - Customer,BoxID和Barcode。该列表不会是CustomerBoxes的集合,因为如果您没有使用"选择"

的投影。