Я использую Fluent NHibernate для автоматического сопоставления моих сущностей.
Это код, который я использую для автоматического сопоставления:
new AutoPersistenceModel()
.AddEntityAssembly(Assembly.GetAssembly(typeof(Entity)))
.Where(type => type.Namespace.Contains("Domain") && type.BaseType != null && type.BaseType.Name.StartsWith("DomainEntity") && type.BaseType.IsGenericType == true)
.WithSetup(s => s.IsBaseType = (type => type.Name.StartsWith("DomainEntity") && type.IsGenericType == true))
.ConventionDiscovery.Add(
ConventionBuilder.Id.Always(x => x.GeneratedBy.Increment())
);
Это работает просто отлично. Но теперь мне нужно иметь готовую загрузку в одном объекте моего домена. Найден этот ответ . Но когда я добавляю строку .ForTypesThatDeriveFrom<IEagerLoading>(map => map.Not.LazyLoad())
в код и запускаю ее, я получаю следующее исключение:
- Ошибка при попытке создать документ сопоставления для IEagerLoading
Обратите внимание, что я использую интерфейс (IEagerLoading
), чтобы отмечать объекты, которые я хочу загружать.
Может кто-нибудь помочь, как это сделать? Помните, что я хочу сохранить функцию автоматического сопоставления.
Спасибо