0

对于我正在研究的调查系统的报告,我们开发了一个存储过程,它返回具有不同列数的数据。

我们向操作员显示这些表中的所有列:用户、问题、答案。

用户从报告应显示的​​每个表中选择列。例如:用户:姓名、年龄、邮政编码。
问题:问题 2、问题 4 答案:答案 2、答案 3、答案 4。

然后我们将参数传递给存储过程,存储过程返回:每个用户属性、问题或答案一列。以及数据库中每个用户的一行。

例子: 例子

如您所见,存储过程可以返回 3 行 2 列到 500 行 50 列之间的任何内容。有没有办法将存储过程与实体框架一起使用?起初我尝试使用复杂的返回类型,但似乎这种方法在这种情况下不起作用。

4

1 回答 1

0

EF 仅支持在设计时定义的具有固定列数的存储过程。要执行此过程,您需要使用普通的旧 ADO.NET。

编辑:如果您有固定的列总数(您提到 50 个),您可以创建包含所有这些列的单个类并将其用作执行结果。EF 将仅填充结果集中存在的属性。

于 2012-05-08T14:32:03.047 回答