4

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

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

我想从作为 DataTable 预处理的存储过程中获取数据。我创建了函数导入。

在此处输入图像描述

我这样称呼它

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

但是有错误,它说

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

那么你能告诉我如何运行存储过程并将数据作为数据集获取吗

4

2 回答 2

2

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

但是,如果您确实使用 EF,那么您不应该真的需要 EF Project 中的数据集 - 使用它为您生成的强类型。

于 2013-08-16T01:07:54.093 回答
1

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

更多信息

于 2013-08-16T01:16:56.523 回答