У меня есть очень простое веб-приложение asp.net mvc, которое использует активную запись замка поверх MySql.
Пользователи приложения хотят теперь определить первичный ключ для одного из объектов вручную (это было значение по умолчанию для автонумерации). Нет проблем, я подумал, я просто изменю атрибут первичного ключа с [PrimaryKey]
на [PrimaryKey (PrimaryKeyType.Assigned)]
и изменим схему базы данных (хорошо, я знаю, что это можно считать некорректным подходом, но это не главное в этом вопросе)
После этого новые сущности никогда не будут сохраняться в базе данных при вызове их метода .Create()
, хотя я создаю сессионную область для запроса в OnBeginRequest и OnEndRequest, используя код, идентичный здесь . Тот же код работал нормально, прежде чем я изменил атрибут [Primary Key]
.
Если я вызываю .CreateAndFlush () вместо Create (), сущности сохраняются в БД. Я думал, что изменения в Create () будут сохраняться после завершения сеанса. Почему они ... я не понимаю, как это должно работать?