Asp.net mvc 调用存储过程的MVC实体框架

Asp.net mvc 调用存储过程的MVC实体框架,asp.net-mvc,entity-framework,stored-procedures,ado.net-entity-data-model,Asp.net Mvc,Entity Framework,Stored Procedures,Ado.net Entity Data Model,我正在使用ASP.NETMVC4.5和EF。我将存储过程导入ADO.NET实体数据模型。我有我的.edmx和XX.tt以及我的StoreProcedure\u Result.cs 我用 var result = dbcontext.SP(Param).AsEnumerable().First(); 我的问题是那些 select count(id) as Count from table 不会出现在我的SP_结果.cs 有什么想法吗?我只是自己尝试了一下,没有看到为只返回count()的存储过

我正在使用ASP.NETMVC4.5和EF。我将存储过程导入ADO.NET实体数据模型。我有我的
.edmx
XX.tt
以及我的
StoreProcedure\u Result.cs

我用

var result = dbcontext.SP(Param).AsEnumerable().First();
我的问题是那些

select count(id) as Count from table
不会出现在我的
SP_结果.cs


有什么想法吗?

我只是自己尝试了一下,没有看到为只返回count()的存储过程创建的“\u Result.cs”类。我猜不需要创建_Result.cs类,因为它只是一个int,不需要特定类型。不过,我仍然能够调用sproc。你可以得到像这样的整数

var result = db.getCount().First(); 
int i = (int)result; 

我将打开.edmx文件和“从数据库更新模型”,并确保选择要添加或刷新的存储过程。我的存储过程显示在My.edmx上,但它不显示在My\u Result.cs上。。。此外,如果我更改它,并将“从表中选择id”替换为“从表中选择计数(id)”。。它出现在my_results.cs上。它似乎不喜欢“count()”语法。您是否尝试调用存储过程?在这些情况下,可能不会创建“_Result.cs”类,因为它只是一个int。EF可能不会为了表示int而创建专用类型。这是我的最佳猜测。好的,但在这种情况下,当我调用“var Result=dbcontext.SP(Param).AsEnumerable().First();”时,我从哪里获得结果计数()从SP?这对我来说很好。。。var result=db.getCount().First();int i=(int)结果;