У Linq да NHibernate (NH3.2), магу я гатовы прынесці больш, чым адна уласнасці/збор у той час?

У мяне ёсць аб'ект SomeType з двума калекцыямі ў ім, А і В, і дазваляе казаць аб некаторых Лагічнае ўласцівасць C, каб дапамагчы з прыкладам.

Я даведаўся, ужо цяжкі шлях, што я не магу зрабіць:

IQueryable query = getIQueryableSomehow();
List = query.Where(x => x.C).Fetch(x => x.A).Fetch(x => x.B).ToList();

Затым я атрымліваю паўтаральныя вынікі B для аднак многія аб'екты знаходзяцца ў А. декартовых твор ..

Я не магу знайсці якую-небудзь інфармацыю пра тое, як хочуць атрымліваць больш за адну калекцыі. Хто-небудзь ведае, як зрабіць усё гэта ў адным запыце? Ці з'яўляецца гэта ў цяперашні час немагчыма?

Дзякуй!

1

1 адказы

Так, вы можаце зрабіць гэта, выкарыстоўваючы ф'ючэрснымі . Паглядзіце тут:

Нецярпліва выбаркі некалькі уласцівасцяў калекцыі (з дапамогай QueryOver/Linq)?

Or here:
NHibernate lazy loading nested collections with futures to avoid N+1 problem

2
дададзена