powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / EF + Транзакции + Триггеры: Не "видно" изменений триггером
3 сообщений из 3, страница 1 из 1
EF + Транзакции + Триггеры: Не "видно" изменений триггером
    #39256487
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Суть проблемы такая:
Запускаю транзакцию.
Добавляю запись в таблицу, отрабатывает триггер.
Но до Коммита Транзакции действия Триггера не видно.

Код:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
using (System.Data.Entity.DbContextTransaction ts = db.Database.BeginTransaction())
{
 //1. Проверка поля, которое должно изменится
 Models.Model1 model1 = await db.Model1.FindAsync(50);

 //2. Вносим в таблицу новую запись
 Models.Model2 model2 = new Models.Model2();
 model2.Model1ID= 50; 
 model2.Field1 = 1;
 ...
 db.Entry(model2).State = EntityState.Added;
 await db.SaveChangesAsync();

 //3. Проверка поля, которое должно изменится - ничего не поменялось!!!
 Models.Model1 model11 = await db.Model1.FindAsync(50);

 ts.Commit();

 //4. Проверка поля, которое должно изменится - а вот тут видно, что поле изменилось!!! Триггер отработал!!!
 Models.Model1 model111 = await db.Model1.FindAsync(50);
}



Юзаю SQLite.
Но тестил и для MS SQL-я
Результат один!

Можно как-то сделать так, что бы действия триггера было видно внутри Транзакции???
...
Рейтинг: 0 / 0
EF + Транзакции + Триггеры: Не "видно" изменений триггером
    #39256497
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пардон, в конце "другое" соединения: db2
Код: c#
1.
2.
 //4. Проверка поля, которое должно изменится - а вот тут видно, что поле изменилось!!! Триггер отработал!!!
 Models.Model1 model111 = await db2.Model1.FindAsync(50);


Иначе, даже после завершения транзакции при том же соединении изменений НЕТ!
...
Рейтинг: 0 / 0
EF + Транзакции + Триггеры: Не "видно" изменений триггером
    #39256523
Фотография potkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Срочно надо было!
Вот нашёл:
Код: c#
1.
db.Entry(model11).Reload();
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / EF + Транзакции + Триггеры: Не "видно" изменений триггером
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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