Dapper uses ado.net transactions. Also, since many ado.net providers support ambient transactions (TransactionScope), this is usually supported - but requires no extra code. If you can do what you want with ado.net transactions: fine. If you can do what you want with TSQL: fine - just issue the appropriate commands. Really it comes down to: can you do that from ado.net?
It would, for example, be worth trying a stored procedure with explicit transaction inside a connection with the connection's BeginTransaction.