Sí soporta parámetros de entrada/salida (incluyendo RETURN
value) si usa DynamicParameters
, pero en este caso la opción más simple es simplemente:
var id = connection.QuerySingle<int>( @"
INSERT INTO [MyTable] ([Stuff]) VALUES (@Stuff);
SELECT CAST(SCOPE_IDENTITY() as int)", new { Stuff = mystuff});
Tenga en cuenta que en las versiones más recientes de SQL Server (2005+) puede usar OUTPUT
cláusula:
var id = connection.QuerySingle<int>( @"
INSERT INTO [MyTable] ([Stuff])
OUTPUT INSERTED.Id
VALUES (@Stuff);", new { Stuff = mystuff});