0

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

我想使用 EF 执行 SQL 脚本,但我事先不知道要返回的实体是什么,例如从查询中返回多少个字段。“最好”的方法似乎是使用类似的东西:

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

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

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

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

有没有一种简单的方法可以做到这一点?

4

1 回答 1

2

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

于 2013-04-30T17:36:41.310 回答