Dapper多参数存储过程查询未从数据库返回任何内容

时间:2018-08-20 19:32:55

标签: c# asp.net-web-api asp.net-core dapper

我一直在使用Dapper作为.NET Core Web Api的ORM。

使用Dapper通过一个参数从我的数据库查询存储过程时,它的工作原理与预期完全相同。当我添加多个参数时,它不会像往常一样将任何内容返回给我的数据模型。

我怀疑这与我的语法或构造查询的方式有关。我在下面使用的存储过程在SSMS查询窗口中执行时可以按预期工作。

这是我在DAL中包含Dapper查询的方法:

public List<Players> C_GetAllActivePlayersInSport(int orgID, int sportID)
    {
        using (IDbConnection db = new SqlConnection(_connectionString))
        {
            var returnedData = db.Query<Players>("dbo.spPlayers_GetAllActivePlayers_by_Sport @orgID, @sportID", new { orgID = orgID, sportID = sportID }).ToList();

            return returnedData;
        }
    }

传入的值使其进入上面的方法和查询,但是执行查询后,它将返回一个计数为0的列表。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:3)

尝试:

var returnedData = db.Query<Players>(
    "dbo.spPlayers_GetAllActivePlayers_by_Sport",
        new { orgID, sportID }, commandType: CommandType.StoredProcedure).ToList();

(注意:.AsList()会稍微偏爱)