Хорошо, у нас есть следующий senario, но как вы делаете Оптимистическая блокировка
у нас есть класс клиента
Версия - это переменная столкновения (int), которая при редактировании строки увеличивает версию на 1.
Теперь у нас есть Мартин, который открывает Customer 129, так как в модели представления объект модели сглаживается в модели представления, а затем передается на экран редактирования клиента.
Дэвид тем временем также открывает Клиент 129 для редактирования, меняет имя и сохраняет.
Мартин, который все еще редактировал клиента (теперь старая версия), идет, чтобы сохранить свои изменения, в этот момент я надеюсь увидеть ошибку блокировки, которая будет выдана
Вопрос в том, как вы справляетесь с оптимистической блокировкой с помощью NH (используя FluentNHibernate для сопоставлений).
- нужно вставить номер версии в ViewModel? затем, когда оно было отправлено с обновлением, загрузите текущий объект Model и проверьте версию Numbers
- Или есть лучший способ (я знаю, что NH сделает управление версиями, если я загружу, отредактирую и обновлю в одном сеансе)
еще одна вещь, этот сценарий будет использоваться на ферме, не разделяющей кеш
заранее большое спасибо