c# - EF 6 数据库第一个存储过程

标签 c# entity-framework

当使用 EF6 数据库优先并尝试执行存储过程时,自动生成的上下文会添加所需的方法,但将返回类型设置为 ObjectResult。例如下面的定义:

public virtual ObjectResult<USP_GetItemDetails_Result> USP_GetItemDetails(int? itemNbr, int? siteNbr)

返回类型为:

return ((IObjectContextAdapter)this).ObjectContext.ExecuteFunction<USP_GetItemDetails_Result>("USP_GetItemDetails", itemNbr, siteNbr);

有没有办法将这个结果具体化为具体类,而不是必须将结果作为 ObjectResult 发送?我堆栈中的下一层不知道 Entity Framework 。

最佳答案

事实证明,底层的 ObjectResult 是一个 IEnumerable。一个简单的 toList 意味着我可以将 IEnumerable 返回到下一层。

关于c# - EF 6 数据库第一个存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40313751/

相关文章:

c# - 不要在 "using"语句后处理属性

linq-to-sql - EF4 或 LINQ to SQL 的优点是什么?

c# - 如何检查唯一键约束

c# - OData 是否允许用户使用 IQueryable 查询 SQL EF 数据库?

c# - 可空枚举或附加元素

c# - 在界面中调用 c# 事件

c# - 具有中断条件的异步 foreach

c# - 删除非数字、非小数、重复小数

c# - 确定 ARGB 范围之间的像素颜色

mysql - EF6 与 MySQL。字典中不存在给定的键