Dapper multi-parameter stored procedure query returns nothing back from database

假装没事ソ 提交于 2020-02-05 03:54:11

问题


I have been using Dapper as my ORM for my .NET Core Web Api.

When using Dapper to query a stored procedure from my database with one parameter, it works exactly as expected. When I add more than one parameter, it does not return anything back to my datamodel like it should.

I suspect this has to do either with my syntax or the way I am structuring the query. The stored procedure I am using below works as expected when executed inside a SSMS query window.

Here is my method containing the Dapper Query in my DAL:

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;
        }
    }

The values passed in make it to the method and query above, but after the query executes, it returns a list with a count of 0.

Any help would be greatly appreciated!


回答1:


Try:

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

(note: .AsList() would be marginally preferable)



来源:https://stackoverflow.com/questions/51937392/dapper-multi-parameter-stored-procedure-query-returns-nothing-back-from-database

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!