Проблема с сессией nhibernate о транзакциях - PullRequest
0 голосов
/ 15 июня 2011

Я попытаюсь объяснить в псевдокоде.

Есть две сессии s1 и s2

int totalEntity = 0;

Thread1
{
s1.BeginTransaction ();
loop (infinite)
{
   totalEntity = s1.List<Entity> ().Count ();
}
s1.EndTransaction ();
}


s2.BeginTransaction ();
s2.Insert<Entity> ();
s2.EndTransaction ();

Когда я запускаю s2, totalEntity по-прежнему равен нулю, поскольку транзакция s1.Transaction не зафиксирована. Как я могу получить реальный totalEntity как 1, в цикле?

Ответы [ 2 ]

0 голосов
/ 15 июня 2011

Я думаю, что лучше, если транзакция находится внутри цикла.

0 голосов
/ 15 июня 2011

Вы можете вызвать flush, это приведет к обновлению БД.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...