这是我在 MySQL 中的 SP
CREATE PROCEDURE `GetMemberID`(
IN uname VARCHAR(128),
OUT MemberID INT
)
BEGIN
SELECT ID INTO MemberID FROM `Member` Where username = uname;
END
我从使用 Pomelo ORM 的 .netcore web api 项目调用 SP。
var usernameParam = new MySqlParameter
{
ParameterName = $"@uname",
DbType = DbType.String,
Direction = ParameterDirection.Input,
Value = "test"
};
var memberIDParam = new MySqlParameter
{
ParameterName = $"@MemberID",
DbType = DbType.Int32,
Direction = ParameterDirection.Output
};
rContext.Database.ExecuteSqlRaw($"Call GetMemberID (@uname=@uname, @MemberID=@MemberID OUT)"
, usernameParam , memberIDParam);
使用输出参数时出现以下错误。
CommandType 为 Text 时仅支持 ParameterDirection.Input(参数名称:@MemberID)
如何传递输出参数?