Dapper peut-il implémenter plusieurs insertions de suppression ou mises à jour en tant que QueryMultiple?

dapper

Question

J'ai vu QueryMultiple du document officiel Dapper comme ci-dessous, c'est pratique!

     var sql = @"
select * from Customers where CustomerId = @id
select * from Orders where CustomerId = @id
select * from Returns where CustomerId = @id";

using (var multi = connection.QueryMultiple(sql, new {id=selectedId}))
{
   var customer = multi.Read<Customer>().Single();
   var orders = multi.Read<Order>().ToList();
   var returns = multi.Read<Return>().ToList();
   ...
}

Maintenant, lorsque je supprime un enregistrement de la table parent, je souhaite supprimer l'enregistrement associé de Child-table. Dapper peut-il s'adapter? Cela ressemble à celui ci-dessous.

 var sql = @"delete from tb_role where roleid=@ID
                            delete from tb_rolepermission where roleid=@ID
                            delete from tb_userrole where roleid=@ID
        ";
        var param = new { ID=id };

 connection.EXECUTEMultiple(sql, param).......... 

Toute aide serait appréciée!

Réponse populaire

Oui, vous pouvez simplement appeler connection.Execute et il autorise déjà plusieurs commandes, comme ExecuteQuery le permet sur SqlCommand, ce que Dapper appelle de toute façon.




Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi