如何从Entity Framework中的存储过程获取DataSet数据

时间:2013-08-16 00:56:27

标签: c# asp.net entity-framework

我正在使用asp.net的实体框架。

我将我的数据库和存储过程添加到ADO.net实体数据模型。

我希望将存储过程中的数据预处理为DataTable。我创建了函数import。

enter image description here

我称之为

DataTable user= db.f_GetbyUser((Guid)User.UserId);

但是有错误,它说

  

无法将类型'System.Data.Objects.ObjectResult'隐式转换为'System.Data.DataSet'

那么请告诉我如何运行存储过程并将数据作为数据集

2 个答案:

答案 0 :(得分:1)

没有直接转换。您必须在循环中手动循环结果和填充的数据表/数据集,或者使用相同的连接,但在实际的ADO.NET Command对象/适配器对象中填充数据集。

但是你不应该在EF Project中真正需要数据集,如果你使用EF - 使用它为你生成的强类型。

答案 1 :(得分:1)

你在这里混合技术。正如@ yuriy-galanter所说,如果您自己将数据存入DataSet / DataTable,技术上是可行的,但您需要重新考虑数据访问方法并选择DataSet,EF(或更好的东西)。

More information