У меня есть класс Invoice и еще два связанных класса, поскольку это устаревшая система, в одной из которых есть несколько разных реализаций:
InvoiceDetails
ManyToOne(k => k.Invoice, m =>
{
m.Column("Invoice_id");
m.Class(typeof(Invoice));
m.NotFound(NotFoundMode.Ignore);
});
и другие
InvoiceCustomProperties
Когда мы добавляем новый счет, а затем добавляем новый InvoiceDetails, затем обновляем его (мы используем общий метод), все работает нормально.
НО когда мы добавляем новый счет а затем добавляем новый InvoiceCustomProperties, затем обновляем его, он прерывается следующим исключением:
InvalidCastException: невозможно привести объект типа «Core.Invoices.Invoice» к типу «Core. Invoices.GroupedInvoice', который не имеет связи или ссылки ни в одной из двух таблиц
(да, GroupedInvoice наследует от Invoice)
любые подсказки будут оценены.
Для обновления мы используем
CurrentPersistenceContext.Session.NHibernateSession.Refresh()
Подробнее здесь: https://stackoverflow.com/questions/790 ... ted-object
Nhibernate Неверное приведение после обновления вновь созданного объекта ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение