С RavenDB возможно ли получить идентификаторы свойства в другом свойстве?Например, если у Foo есть список объектов Bar, а каждый объект Bar имеет свойство SnuhId, могу ли я использовать Include, который получает идентификаторы каждого свойства Snuh?
Я пробовал запрос ниже, но получаюисключение RavenDB: индекс вне диапазона.В этом запросе ApplicationServer является корневым элементом и содержит список объектов ApplicationsWithOverrideGroup.Каждый из этих объектов имеет свойство ApplicationId.Это ApplicationId, который я хочу получить во включении.
IEnumerable<ApplicationServer> appServers = QueryAndCacheEtags(session =>
session.Advanced.LuceneQuery<ApplicationServer>()
.Include(x => x.CustomVariableGroupIds)
// This is the line I'm trying to make work:
.Include(x => (from item in x.ApplicationsWithOverrideGroup select item.ApplicationId).ToList())
).Cast<ApplicationServer>();
Любой из этих подходов кажется работающим.Необходимо тщательно протестировать.
.Include(x => x.ApplicationsWithOverrideGroup)
или
.Include(x => x.ApplicationsWithOverrideGroup[0].ApplicationId)
Если этот первый параметр действительно работает, то свойство, указанное в Include (), будет включать в себя свойства идентификатора.,Это верно?
Я не уверен, что оба они действительно работают, но они, кажется, работают.Если они оба работают, мне интересно, один из них лучше другого ...
Хорошо, это НЕ РАБОТАЕТ.NumberOfRequests увеличивается, что, как я предполагаю, означает, что количество обращений к БД увеличивается, а не только то, что в сеансе.