使用以下步骤解决此问题:
- 您需要将存储过程导入为函数。右键单击实体模型的工作区,然后选择
Add -> Function import
。 - 在“添加函数导入”对话框中,输入要在模型中引用存储过程的名称,例如
Search_Products
,从下拉列表中选择过程,然后选择该过程的返回值,然后从下拉列表中进行Entities
选择Products
。清单。 然后在后面的代码中:
var db = new MyEntities();
var TEST_SEARCH_TERM = “product”;
var result = db.Search_Products(TEST_SEARCH_TERM);//Search_Products is the name that you specified in Function import dialogMyGridView.DataSource = result;
MyGridView.DataBind();
获得
-1结果的原因是Entity framework无法直接支持存储过程返回值。我认为对存储过程返回值的支持取决于Entity
framework的版本。另外,Entity framework不具有丰富的存储过程支持,因为它是ORM而不是SQL的替代品。



