Создает ли автоматическое управление транзакциями Castle TransactionScope для транзакционных методов? - PullRequest
1 голос
/ 10 августа 2011

У меня есть приложение, которое должно обращаться к своей БД (через NHibernate) и выполнять вызовы веб-сервисов (через WCF) в одной распределенной транзакции (которая передается в вызываемые веб-сервисы через WS-AT). Сейчас я явно создаю TransactionScope, а затем открываю сеансы NHibernate и выполняю вызовы WCF внутри. Могу ли я заставить Castle ATM создать TransactionScope для меня (или каким-либо другим способом информировать WCF о текущей транзакции) или он может управлять только транзакциями NHibernate?

1 Ответ

2 голосов
/ 11 августа 2011

Так что я являюсь автором этой службы.

Версия 3, которая в настоящее время находится в бета-версии (биты ввода-вывода - это альфа, транзакции - это GA), устанавливает так называемую «внешнюю транзакцию» - эточто TransactionScope использует за кулисами.

Это означает, что ваша транзакция будет проходить через границы сервиса.

Лучший способ получить версию 3 - install-package castle.services.transaction и castle.facilities.autotx

...