Все сообщения Dapper в S / O, связанные с возвратом значения после вставки, похоже, относятся только к значению Identity. Я пытался применить logi c в этих ответах на мою проблему, но он не работает.
Я хочу вернуть GUID, сгенерированный SQL Сервером, который не Поле идентичности. Это мой код:
public bool Insert(Record record)
{
SqlConnection connection = new SqlConnection(_configuration.GetConnectionString("Production"));
connection.Open();
using (connection)
{
string query = "DECLARE @RSGUID uniqueidentifier SET @RSGUID = NEWID(); INSERT INTO [dbo].[Table] ([Result], [ResultSetKey]) VALUES (@Result, @RSGUID); SELECT @RSGUID";
// it's this next line that I'm confused on:
var resultSetKey = connection.Query<string>(query, @RSGUID).Single();
return connection.Execute(query, record) > 0;
}
}
Я знаю, что строка var resultsSetKey
неверна, и с этим мне нужна помощь. Как я могу получить GUID, сгенерированный SQL Сервером, в переменную?