Можно ли получить SqlTransaction из внешней транзакции? - PullRequest
2 голосов
/ 09 августа 2011

Из-за функции SavePoints в SQL Server (SqlTransaction.Save()) я хотел бы использовать SqlTransactions очень ограниченным образом (мне ДЕЙСТВИТЕЛЬНО нужна эта функциональность), при этом все еще используя окружающие транзакции во всех других местах. Я понимаю, что это означает, что этот код (и зависимости) теперь специфичны для SQL Server - это нормально. Тем не менее, я все же предпочел бы следовать предпочтительным окружающим транзакциям во всех других местах в целях лучшей практики. (Если нам нужно перейти на Oracle или что-то в этом роде, нам нужно будет переделать эту часть нашего кода, но мы не хотим переделывать всю кодовую базу.)

Возможно ли получить текущий SqlTransaction из Transaction.Current (который возвращает объект типа System.Transactions.Transaction) или каким-либо другим способом? (Я могу ошибаться, но я предполагаю, что в конечном итоге это объект, который реализует окружающий Transaction объект во время выполнения)

( связанный, но другой вопрос, над которым я сейчас работаю, если вам нужна дополнительная информация о причинах )

1 Ответ

0 голосов
/ 23 сентября 2011

Насколько я могу сказать, это просто невозможно сделать. Учитывая, что я не получаю ответ на это, я отмечаю это как ответ. Я все еще могу ошибаться. Я просто не могу понять это, и у меня нет времени, чтобы разобраться в этом дальше.

...