【发布时间】:2020-09-01 16:39:55
【问题描述】:
我正在将 MySql.Data.EntityFrameworkCore 与 blazor 一起使用,当我想从存储过程中获取分页的输出值总计数时,我得到以下错误
错误:MySql.Data.MySqlClient.MySqlException (0x80004005): OUT 或 例程 get_articles 的 INOUT 参数 1 不是变量或 NEW BEFORE 触发器中的伪变量
下面的代码是我的存储过程
DELIMITER $$
CREATE PROCEDURE get_articles(IN _offset INT, IN _count INT, OUT _total INT)
BEGIN
SELECT SQL_CALC_FOUND_ROWS *
FROM content c JOIN content_types t
ON c.content_type = t.id
WHERE t.name = 'article'
LIMIT _offset, _count;
SET _total = FOUND_ROWS();
END$$
DELIMITER ;
下面的代码是c#
var totalCount = new MySqlParameter()
{
ParameterName = "@TotalCount",
Direction = System.Data.ParameterDirection.Output,
};
var earningTypes1 = await dbContext.Result.FromSqlRaw(
"CALL get_articles (0,30,@TotalCount)",
totalCount
).AsNoTracking().ToListAsync();
【问题讨论】:
标签: c# mysql asp.net-core blazor blazor-server-side