c# - 存储过程返回值在 Entity Framework 中是int

标签 c# sql-server stored-procedures entity-framework-6

我有一个返回契约(Contract)值和发票值的复杂存储过程。当我生成 edmx 时,存储过程返回值被映射到 int。我没有定义类,它采用契约(Contract)值和发票值。如何使用 Entity Framework (6.1) 执行 sp

顺便说一下,我对更改生成的实体不感兴趣,因为我会不时更新 Db 并刷新 edmx。所以我不想制造困惑。相反,如果需要,我可以使用部分类来扩展任何实体,这些实体可以放在生成的文件之外,所以我不会在刷新时错过自定义更改。

最佳答案

您必须创建一个对象来保存存储过程的结果。我相信它被称为标量对象。如果您打开“映射详细信息”工具箱,您将看到此类对象。创建对象后,您必须在存储过程中创建函数导入并将函数的结果映射到新创建的对象。至少在 EF 5 中是这样的。

关于c# - 存储过程返回值在 Entity Framework 中是int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25268846/

相关文章:

C#:事件处理程序如何绑定(bind)到名为 "On....."的方法?

javascript - 1941/1942 年 javascript 日期 api 的奇怪行为

javascript - 按名称搜索用户的最佳方法是什么?

sql-server - 将字符串参数从 SQL Server 传递到链接的 Oracle Server 过程

c# - 在 C# 中从 Entity Framework 调用存储过程

c# - 申请许可证

c# - 无法隐式转换类型 'System.Linq.IQueryable<AnonymousType#1>'

c# - Log4Net AdoNetAppender- 截断表/删除旧记录/限制 DB 大小

sql - 如何用相同大小的文本替换 SQL Server 表列中的字符串

sql - 如何根据出现的列序列提取行