Entity framework 存储过程返回不同维度的数据实体框架4

Entity framework 存储过程返回不同维度的数据实体框架4,entity-framework,stored-procedures,entity-framework-4,entity-framework-4.1,Entity Framework,Stored Procedures,Entity Framework 4,Entity Framework 4.1,对于我正在处理的调查系统的报告,我们开发了一个存储过程,它返回具有不同列数的数据 我们向操作员显示这些表中的所有列:用户、问题、答案 用户从报表应显示的每个表中选择列。 例如: 用户:姓名、年龄、邮编。 问题:问题2,问题4 回答:回答2,回答3,回答4 然后将参数传递给存储过程,存储过程返回: 每个用户属性、问题或答案对应一列。 以及数据库中每个用户的一行 例如: 如您所见,存储过程可以返回3行2列到500行50列之间的任何内容。有没有一种方法可以将存储过程与实体框架一起使用?起初我尝试使用

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

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

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

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

例如:


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

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

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