我在SQL Server中创建了一个存储过程,并加载到我的Visual Studio项目中的a.dbml
数据库文件中。该过程称为storedprocedure1(System.String name, System.Int32 code)
。
现在在我的MVC控制器中(我们称之为FooController
),我正在编写一个方法来从存储过程中获取结果。我该怎么做?
数据库类:
namespace App.Repo.App_Data{
[global::System.Data.Linq.Mapping.DatabaseAttribute(Name="Application")]
public partial class APPDatacontext : System.Data.Linq.DataContext{ /* ... */}
}
控制器类
namespace App.Controllers{
public class FooController : Controller{
private string getResult(string name, int code){
// call and get result from storedprocedure1
}
}
}
SQL Server
ALTER PROCEDURE storedprocedure1 (
@name varchar(10),
@code int
@result varchar(50) OUTPUT
)
AS
SELECT --blah blah blah
GO
答案 0 :(得分:2)
您不能使用RETURN返回过程中的值。 RETURN值是一个整数,用于提供指示执行状态的值。如果您希望从过程中返回值,则应使用OUTPUT变量。
https://msdn.microsoft.com/en-us/library/ms378108%28v=sql.110%29.aspx