首页 新闻 会员 周边

EF 如何调用存储过程返回一个未知匿名类集合?

0
悬赏园豆:20 [已解决问题] 解决于 2016-07-21 13:06

 注释:存储过程返回的是一个不固定列的datetable的集合

Dark_liu的主页 Dark_liu | 初学一级 | 园豆:127
提问于:2015-08-22 10:22
< >
分享
最佳答案
0

db.SqlQuery<dynamic>(sql).ToList() 试试

收获园豆:20
webaspx | 小虾三级 |园豆:1973 | 2015-08-26 10:13
其他回答(3)
0

你存储过程写的时候返回一个虚拟表,当然会是一个datetable,ef也有方法返回的是一个LIST<T>的集合

稳稳的河 | 园豆:4216 (老鸟四级) | 2015-08-22 11:53

因为我是按照时间来查询,所以产生的列是不固定的,有可能是2列有可能是10列,我不知道如何用List<T>来接收集合,这个T我怎么弄呢,要是用datatable直接接收就可以了

支持(0) 反对(0) Dark_liu | 园豆:127 (初学一级) | 2015-08-22 12:55
0

1.如果返回值是未知的,返回值就无法使用

吴瑞祥 | 园豆:29449 (高人七级) | 2015-08-22 17:22
0

可以用泛型去实现吧。你要取数最终是要定到类上的。

现在ef也支持这种啊 db.SqlQuery<Model>(sql).ToList()这样子就已经搞成Model类型的list了。

gw2010 | 园豆:1487 (小虾三级) | 2015-08-24 15:31

mode的属性是可变的

不能设置啊

支持(0) 反对(0) Dark_liu | 园豆:127 (初学一级) | 2015-08-28 13:15

@Dark_liu: model定了属性就定了,你可以用于多个不同的model,但是为什么说属性可变?

支持(0) 反对(0) gw2010 | 园豆:1487 (小虾三级) | 2015-08-28 14:39
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册