Implementando um TransactionScope leve
-
12-12-2019 - |
Pergunta
Estou me referindo a esta pergunta SO:Inserções em massa demorando mais do que o esperado usando Dapper
e para este comentário do @SamSaffron sobre essa pergunta:
"TransactionScope faz um monte de bobagens de DTC com as quais você geralmente não se importa, evitaria isso a menos que eu precisasse desse recurso, é muito fácil rolar seu próprio contexto anexado ao armazenamento local de thread"
Eu sei como lançar meu próprio TransactionManager usando uma transação anexada a um [ThreadStatic]
variável, mas existe alguma maneira confiável de emular, imitar o TransactionScope
então os comandos inscreverão automaticamente minha transação?O produto final será um escopo de transação sem qualquer encanamento MSDTC.
Solução
Sim, veja meu TextoMetal projeto, o código de exemplo e preste atenção ao namespace Plumbing.Se você tiver dúvidas, envie-me um e-mail.Nenhum descuido do MSDTC, apenas ADO.NET, um padrão de unidade de trabalho e algum código de acesso a dados bem projetado!