当使用 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/