Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Транзакция и соединение / 10 сообщений из 10, страница 1 из 1
09.05.2007, 15:03
    #34514614
Sh_ura
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакция и соединение
У класса DbConnection есть метод BeginTransaction. Пусть есть команды (DbCommand) с одним соединением. Соединение открыто.
Выполняется первая команда. Необходимо установить транзакцию, если она еще началась (транзакция могла начаться ранее при выполнении второй команды).
Вопрос:
Как узнать состояние транзакции только по объекту класса DbConnection? Логичное, что если этот класс создает транзакцию, то и должен знать что-то о ее состоянии.
...
Рейтинг: 0 / 0
10.05.2007, 09:40
    #34515268
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакция и соединение
Это "абстрактный" класс... и ни чего он ни кому не должен... Реализуйте этот механизм в наследниках... Удачи :)
...
Рейтинг: 0 / 0
10.05.2007, 16:28
    #34516875
Серж
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакция и соединение
BeginTransaction() дает ссылку на DbTransaction. Запомни ее и работай с ней.
...
Рейтинг: 0 / 0
10.05.2007, 16:34
    #34516905
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакция и соединение
А если транзакцию начал скульный код? :) умельцев-то полно...
...
Рейтинг: 0 / 0
10.05.2007, 16:49
    #34516966
Серж
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакция и соединение
buserА если транзакцию начал скульный код? :) умельцев-то полно...

Это как так?
...
Рейтинг: 0 / 0
10.05.2007, 17:50
    #34517222
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакция и соединение
begin tran....
...
Рейтинг: 0 / 0
10.05.2007, 18:59
    #34517411
Серж
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакция и соединение
Что begin tran понятно... мне что-то не приходит в голову ситуация, когда транзакция началась в ХП, а затем... а затем совершенно непонятным образом в эту транзакцию пытается вклиниться клиент...
Это ж бред какой-то...
...
Рейтинг: 0 / 0
10.05.2007, 19:07
    #34517433
Sh_ura
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакция и соединение
Дело не в абстрактном классе (понятно что для объекта используется какая-то реализация (Oracle)) и даже не в начале транзакции на сервера. А в том что команды находятся в разных классах. Не так-то просто универсальным способом запомнить транзакцию для обоих классов. Хотя именно так и пришлось сделать...
И все-таки повторяю вопрос: Можно ли из объекта класса DbConnection (или его потомка) получить состояние транзакции (существует ли, начата ли и т.д.).
...
Рейтинг: 0 / 0
11.05.2007, 09:33
    #34518065
Серж
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакция и соединение
Sh_uraИ все-таки повторяю вопрос: Можно ли из объекта класса DbConnection (или его потомка) получить состояние транзакции ( существует ли, начата ли и т.д.).

Сделай select @@trancount (как это будет в Оракле не знаю) в рамках того же соединения.
...
Рейтинг: 0 / 0
11.05.2007, 09:49
    #34518083
buser
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Транзакция и соединение
Сдается в оракле это будет - ЗАСАДА.
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Транзакция и соединение / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]