我试图只从集合中获取第一个元素,但我收到此错误:
获取请求必须是简单的成员访问表达式; ' [100002]'是一个SubQueryExpression而是。参数名称:relatedObjectSelector。
我的疑问是:
var allConferences = Session.Query<ConferenceDao>()
.Fetch(i => i.Incident)
.ThenFetch(s => s.Sheets.FirstOrDefault()) //here i need only first sheet
.ThenFetch(v => v.Victims)
.ProjectTo<TelephonyConference>();
我也试过这个:
var subQ = QueryOver.Of<IncidentDao>().SelectList(x => x.SelectMin(y => y.Sheets));
var allConferences = Session.QueryOver<ConferenceDao>()
.Fetch(i => i.Incident).Eager
.WithSubquery.WhereProperty(x => x.IncidentId).In(subQ)
.List()
.AsQueryable()
.Fetch(b=>b.Victims)
.Fetch(a => a.Agency)
.ProjectTo<TelephonyConference>();
return allConferences;
但是我收到了这个错误:
&#34;没有方法&#39;获取&#39; on type&#39; NHibernate.Linq.EagerFetchingExtensionMethods&#39;匹配指定的参数&#34;
我知道如何解决这个问题?感谢