Can Castle ActiveRecord делает оптимистичную блокировку свойств? Я нашел оптимистичную блокировку для всего класса, но не для отдельного объекта. В моем случае мне нужно сделать так, чтобы добавление/удаление элементов в коллекции не обновляло номер версии объекта (например, добавление Product
к Store
без изменения какого-либо из свойств Store
не приведет к увеличению номер версии).Замок ActiveRecord оптимистичная блокировка по свойствам
0
A
ответ
0
NHibernate поддерживает optimistic-lock
свойство, которое может быть применено к свойствам или коллекций, и делает именно то, что вы хотите, когда установлен ложной (по умолчанию верно)
Я думаю ActiveRecord в настоящее время не подвергать его воздействию. Не уверен, как трудно было бы продлить его.
Спасибо. Это довольно неприятно слышать. –
Ну, будучи открытым исходным кодом, это просто вопрос загрузки источников и проверки, где генерируются сопоставления. Переход на не обернутый NHibernate является следующей альтернативой. –
Чтобы подтвердить ответ Диего: ActiveRecord в настоящее время не поддерживает атрибут optimistic-lock для свойств/коллекций. Это не сложно реализовать, см. Http://github.com/castleproject/Castle.ActiveRecord/blob/master/src/Castle.ActiveRecord/Framework/Internal/Visitors/XmlGenerationVisitor.cs#L598 –