asp.net-mvc – 具有输出参数的ExecuteSqlCommand

前端之家收集整理的这篇文章主要介绍了asp.net-mvc – 具有输出参数的ExecuteSqlCommand前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在ASP.NET MVC3应用程序中使用Entity Framework,我试图使用以下代码
var token = "";
this.Database.ExecutesqlCommand("exec dbo.MyUsp",new sqlParameter("token",token));

我的存储过程签名是:

CREATE PROCEDURE MyUSP(@token varchar(10) OUT)
(...)

当我使用这个代码时,我收到一个错误,指出参数“@token”是预期但不提供的。

如何告诉EF,令牌参数是用于输出

@R_403_323@

我最终用这个来使它工作,但我相信有一个更优化的方法
var p = new sqlParameter
{
    ParameterName = "token",DbType = System.Data.DbType.String,Size = 100,Direction = System.Data.ParameterDirection.Output
};
var resp = this.Database.sqlQuery<String>("exec dbo.usp_GetRequestToken @token",p);

return resp.First();

猜你在找的asp.Net相关文章