Ich verwende Dapper als mein ORM für meine .NET Core Web API.
Wenn Dapper verwendet wird, um eine gespeicherte Prozedur von meiner Datenbank mit einem Parameter abzufragen, funktioniert es genau wie erwartet. Wenn ich mehr als einen Parameter hinzufüge, gibt es nichts zurück zu meinem Datenmodell, wie es sollte.
Ich vermute, dass dies entweder mit meiner Syntax oder der Strukturierung der Abfrage zu tun hat. Die gespeicherte Prozedur, die ich unten verwende, funktioniert wie erwartet, wenn sie in einem SSMS-Abfragefenster ausgeführt wird.
Hier ist meine Methode, die die Dapper-Abfrage in meinem DAL enthält:
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;
}
}
Die übergebenen Werte machen es zu der obigen Methode und Abfrage, aber nachdem die Abfrage ausgeführt wird, gibt sie eine Liste mit einer Anzahl von 0 zurück.
Jede Hilfe würde sehr geschätzt werden!
Versuchen:
var returnedData = db.Query<Players>(
"dbo.spPlayers_GetAllActivePlayers_by_Sport",
new { orgID, sportID }, commandType: CommandType.StoredProcedure).ToList();
(Hinweis: .AsList()
wäre marginal vorzuziehen)