Ошибка обезвоживания значения свойства. Невозможно привести объект типа «NHibernate.Action.DelayedPostInsertIdentifier» C#

Место общения программистов C#
Ответить
Anonymous
 Ошибка обезвоживания значения свойства. Невозможно привести объект типа «NHibernate.Action.DelayedPostInsertIdentifier»

Сообщение Anonymous »

Я работал с пакетом nuget Nhibernate 5.2.3, и все работало нормально, но после обновления до 5.3.10 эта ошибка выдается при обновлении модели с помощью Merge() и Flush().NHibernate.PropertyValueException: ошибка обезвоживания значения свойства для «модели».
System.InvalidCastException: невозможно привести объект типа «NHibernate.Action.DelayedPostInsertIdentifier» к типу « System.IConvertible'.
at NHibernate.Type.NullableType.NullSafeSetAsync(DbCommand st, значение объекта, индекс Int32, сеанс ISessionImplementor, CancellationToken cancelToken)
Позже я нашел это: Hibernate руководство

Сопоставление сущностей иногда может быть сложным, и, возможно, какой-то крайний случай был упущен из виду. Hibernate предлагает способ полностью отключить поведение 5.3 в случае возникновения проблем с DelayedPostInsertIdentifier. Чтобы включить устаревшее поведение, установите hibernate.id.disable_delayed_identity_inserts=true

но это для Hibernate, а не для NHibernate. В любом случае я попытался установить свойство с этим именем и заменить hibernate на nhibernate, но это не сработало. Я даже попробовал еще несколько вариантов, но все равно получаю ошибку

Код: Выделить всё

Configuration cfg = new Configuration();
cfg.setProperty("hibernate.id.disable_delayed_identity_inserts","true");
cfg.setProperty("nhibernate.id.disable_delayed_identity_inserts","true");
cfg.setProperty("id.disable_delayed_identity_inserts","true");
cfg.setProperty("disable_delayed_identity_inserts","true");
Я подтвердил, что эта ошибка возникает только после обновления приложения до nhibernate 5.3.10, потому что позже я попытался перейти на версию 5.2.3 и все работало нормально.
Я боролся с этой ошибкой уже несколько дней, и она меня очень раздражает, спасибо за помощь.

Подробнее здесь: https://stackoverflow.com/questions/786 ... rnate-acti
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»