1
我短小精悍我可以执行一些SQL不使用Execute
给予响应的可执行文件和querieable SQL语句混合:如何小巧玲珑
var sql = @"INSERT INTO Items (id, userId, name, description, isPublic) VALUES (@id, @userId, @name, @description, @isPublic)";
using (var connection = new SqlConnection(ConnectionString))
{
connection.Execute(sql, new
{
id = value.Id,
userId = value.UserId,
name = value.Name,
description = value.Description,
isPublic = value.IsPublic
});
}
我可以查询使用Query
:
var sql = @"SELECT * FROM Items WHERE id = @id";
using (var connection = new SqlConnection(ConnectionString))
{
var item = connection.Query<Item>(sql, new { id = id }).Single();
return item;
}
使用[QueryMultiple]()
我可以同时发几个查询:
var sql = @"SELECT * FROM Collections WHERE id = @collectionId
SELECT * FROM Items WHERE id = @itemId";
using (var connection = new SqlConnection(ConnectionString))
{
var multi = connection.QueryMultiple(sql, new { collectionId = collectionId, itemId = itemId });
//...
我将如何执行和查询一气呵成?即我怎么会叫这样的组合:
var sql = @"INSERT INTO Items (id, userId, name, description, isPublic) VALUES (@id, @userId, @name, @description, @isPublic)
SELECT * FROM Items WHERE id = @itemId";"
我没有得到这个遗憾,不知道如何回答我的问题。你的Dapper多重查询'“SELECT @value as Id into #temp; select#from #temp where Id = @value”'不使用'QueryMultiple'。这是要走的路吗? – dumbledad
您问:“我怎么称呼这个组合”,其中组合是:一个插入和单个选择。如果您需要QueryMultiple,只需用它替换查询;我添加了一个新的测试... –