Предполагая следующий вымышленный макетКак хотят принести коллекцию детской, присоединяясь объектами сбора ребенка в ассоциацию
Dealership has many Cars has a Manufacturer
Я хочу написать запрос, который говорит, что заставить меня дилерский с именем X, а также получить коллекцию автомобилей, но при этом используйте соединение с производителем. Я думаю, это потребует использования ICriteria. Я думаю, что-то вроде этого.
var dealershipQuery = Session.CreateCriteria< Dealership>("d")
.Add(Restrictions.InsenstiveLike("d.Name", "Foo"))
.CreateAlias("d.Cars", "c")
.SetFetchMode("d.Cars", FetchMode.Select)
.SetFetchMode("c.Manufacturer", FetchMode.Join)
.UniqueResult< Dealership>();
Но полученный результат выглядит не так, как я ожидал. Я начинаю думать, что DetachedCriteria может потребоваться где-то, но я не уверен.
Мысли?
Я должен был упомянуть, что мы используем старый Oracle, поэтому размер партии не работает. –
Также я не пытаюсь получить две коллекции от Dealership. Я хочу, чтобы автомобили загрузили своего производителя с нетерпением. Вы отправили ссылку, связанную с несколькими коллекциями с одного корня. –
'batch-size' на сущности и коллекции работает со всеми базами данных. И решение Айенде работает для любого количества коллекций; идея заключается в том, что вы получаете корневой файл (ы) в одном запросе и коллекции в другом. –