Реализация облегченного TransactionScope
Я имею в виду этот SO вопрос: массовая вставка занимает больше времени, чем ожидалось, используя Dapper
и на этот комментарий @SamSaffron на этот вопрос:
"TransactionScope делает кучу глупостей DTC, о которых вы, как правило, не заботитесь. Если бы мне не понадобилась эта функция, ее можно было бы избежать, довольно просто свернуть собственный контекст, привязанный к локальному хранилищу потока"
Я знаю, как свернуть свой собственный TransactionManager с помощью транзакции, прикрепленной к [ThreadStatic]
переменная, но есть ли надежный способ подражать TransactionScope
так команды будут автоматически зачислять мою транзакцию? Конечный продукт будет являться областью транзакции без какой-либо сантехники MSDTC.
1 ответ
Да, посмотрите мой проект TextMetal, пример кода и обратите внимание на пространство имен Plumbing. Если у вас есть вопросы, напишите мне. Никаких MSDTC, просто ADO.NET, единица работы и какой-то хорошо разработанный код доступа к данным!