Есть ли способ создать «псевдоним» для компонента?
У меня есть «Criteria Builder», который берет строки в формате «Address.City» (или «User.Address.City», ...) и создает на его основе ICriteria (фильтры и сортировки).
Я использую компоненты для сопоставления класса «Адрес», поэтому он остается в той же таблице, что и «Пользователь».Сопоставление компонентов NHibernate (создание критериев)
Исключение я получаю:
NHibernate.QueryExceptioncould не решить собственности: Город: MyNamespace.User
Если я пытаюсь не создавать «псевдоним» для компонента адреса, он работает просто отлично ,
Однако, поскольку это построитель критериев, есть ли способ обнаружить, что «Адрес» является компонентом и избегать критериев вызова. Создайте ссылку («Адрес»)? Любая работа вокруг?
This - тот же вопрос, что и у меня, однако решение для меня небезопасно (я не создаю критерии для каждого запроса вручную).
Любая помощь была бы высоко оценена!
Можете ли вы опубликовать часть своего кода? – Vadim
@Yads - У меня на самом деле нет кода со мной прямо сейчас. Он должен быть простым, как класс «Пользователь», ссылающийся на класс «Адрес» через свойство. В сопоставлении для пользователя у меня есть «Адрес» в качестве компонента. Посмотрите на https://forum.hibernate.org/viewtopic.php?p=2335410&sid=37a2a95223e929ae6cccfc183af6af28, поскольку он очень похож на мою проблему. Благодаря! – Frederico