[英]ASP.NET MVC4 return output from a stored procedure with Entity Framework
我試圖從存儲過程中獲取簡單的輸出
ALTER PROCEDURE [dbo].[sp_getrandomnumber]
@randoms int output
AS
begin
set @randoms =12345
end
和我的MVC
public ActionResult Index()
{
var qry = db.sp_getrandomnumber(ref randoms);
......
return View();
}
}
但是當我編譯時,我在var qry
部分得到了錯誤,提示如下
方法'sp_getrandomnumber'的重載沒有接受1個參數
名稱“ randoms”在當前上下文中不存在
提前謝謝
您的問題是您的SPROC輸出是一個int。
請參見Scott Scott文章的以下引文。
“ LINQ to SQL將SPROC中的“ out”參數映射為參考參數(ref關鍵字),對於值類型,該參數將參數聲明為可為空。
因此,您需要確保將randoms
聲明為可為null的int。
將您的sp呼叫更改為
public ActionResult Index()
{
// @randoms int output from SPROC.
int? randoms = null;
// qry would contain a select if you had one in the SPROC.
var qry = db.sp_getrandomnumber(ref randoms);
// randoms is 12345
return View();
}
在這里找到另一個示例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.