使用实体框架从存储过程访问数据
本文解决了使用实体框架 6.1 从动态 SQL 存储过程检索数据的挑战.1.目标是使用检索到的数据填充 GridView 控件。
该场景涉及一个名为 SearchProducts 的存储过程,它接受搜索词作为参数,并根据动态 SQL 查询返回结果集。 C# 代码尝试执行存储过程并将结果绑定到 GridView 控件。
问题
执行代码时,存储过程在数据库资源管理器但在运行的应用程序中失败,返回 -1 而不是 IEnumerable DataSet。这表明数据未成功检索。
解决方案
要解决此问题,需要将存储过程作为实体中的函数导入模型。步骤如下:
在“添加函数导入”对话框中:
更新C#代码:
修改后的代码:
var db = new MyEntities(); var TEST_SEARCH_TERM = "product"; var result = db.Search_Products(TEST_SEARCH_TERM); MyGridView.DataSource = result; MyGridView.DataBind();
说明
实体框架缺乏对存储的完整支持过程返回值。将存储过程作为函数导入可以将其视为实体框架方法,可以处理数据的检索。
以上是如何使用实体框架从存储过程中检索数据并填充 GridView?的详细内容。更多信息请关注PHP中文网其他相关文章!