NHibernate: Критерии / Подкритериальная проекция
У меня есть класс Mod, который имеет член:
ICollection EventList
Класс Event имеет член:
public virtual EventType Type { get; set; }
Класс EvenType имеет член:
public virtual int Id
Я хочу получить список всех событий в моде, которые имеют идентификатор 1 или 2, используя критерии NHibernate. Я сделал это:
var subCriteria = DetachedCriteria.For()
.Add(Restrictions.In("Event.Type", new int[] {1, 2 })
);
criteria.Add(Subqueries.Exists(subCriteria));
но я получаю сообщение об ошибке выполнения, в котором говорится, что нельзя использовать подзапросы по критериям без проекции.
Итак, хорошо, но я нене знаю, что поставить для проекции. Я могу найти примеры того, как делать проекции, но ничего, что действительно объясняет цель. Я'мы пробовали разные вещи, но все это приводит к ошибке во время выполнения:
Сообщение: значение не может быть нулевым. Имя параметра: ключ Источник: mscorlib Справочная ссылка: имя_параметра: ключ
Мне нужно использовать подзапрос, потому что я буду добавлять больше, когда это работает.
Можете ли вы предложить, что делать для проекции?