使用实体框架5返回一个相当于数据读取器的对象

本文关键字:数据 相当于 一个 读取 对象 框架 实体 返回 | 更新日期: 2023-09-27 18:11:28

我有一个MVC3 ADO项目。使用Visual Studio 2010和c#开发。NET。我需要在数据库表中保存的临时报告(两列—报告标题和要执行以返回报告的SQL脚本)。生成的报告可以显示在表格中,也可以作为CSV文件下载。

我想使用EF执行SQL脚本,但我事先不知道要返回的实体是什么,例如,将从查询返回多少字段。"最好的"方法似乎是使用如下内容:

var QueryResults = dataContext.ExecuteStoreQuery<object>(SQLText, String.Empty);

但然后我需要使用一些反射来获得报告结构,这只是一组字符串。这感觉像是一种迂回的做事方式,我不确定如何从返回的结果中获得字段/列名。

如果我要使用ADO。. NET SqlDataReader那么我现在确切地做什么,但这感觉像是一个倒退的一步。

使用在运行时加载的SQL脚本快速报告是我过去使用过的一个强大功能,但我想把它带到EF时代。

有直接的方法吗?

使用实体框架5返回一个相当于数据读取器的对象

您应该为您的任务使用SqlDataReader。在此任务中使用EF将没有任何优势,因为您的查询结果没有类型化。