У меня есть фрагмент кода, который должен проверять сущность при сохранении в моем репозитории.У меня есть перехватчик NHibernate в сохранении, чтобы проверить это, но когда я вызываю функцию GetGenericTypeDefinition
, код завершается с ошибкой:
[InvalidOperationException: операция недопустима из-за текущего состоянияобъект.] System.RuntimeType.GetGenericTypeDefinition () + 7525641
Код такой:
protected override object PerformSaveOrUpdate(SaveOrUpdateEvent evt)
{
if (evt.Entity.GetType().GetGenericTypeDefinition() == typeof(IChild<>))
{
var parent = (evt.Entity as IChild<Entity>).Parent;
if (parent != null)
{
parent.UpdateCacheCounters();
evt.Session.Save(parent);
}
}
}
Любая помощь будет высоко ценится.