我正在尝试返回TrackInformationRecord的列表,该列表通过以下方式完成:
return _trackInformationRepository
.Fetch(t => t.TrackPartId == trackPart.Id && t.IsDeleted == false)
.ToList();
但是,TrackInformationRecord在TrackInformationRecord.Sessions中包含SessionInformationRecord的列表,我只想使用IsDeleted == false进行Session。
我尝试了以下操作,但没有成功:
return _trackInformationRepository
.Fetch(t => t.TrackPartId == trackPart.Id && t.IsDeleted == false
&& t.Sessions.Where(s => s.IsDeleted == false))
.ToList();
任何建议将不胜感激。
最佳答案
如果要确保所有Session的对象IsDeleted都为false,则需要All
return _trackInformationRepository
.Fetch(t => t.TrackPartId == trackPart.Id && !t.IsDeleted
&& t.Sessions.All(s => !s.IsDeleted)).ToList();
但是,如果您希望任何Session的对象IsDeleted为false,则需要
Any
-return _trackInformationRepository
.Fetch(t => t.TrackPartId == trackPart.Id && !t.IsDeleted
&& t.Sessions.Any(s => !s.IsDeleted)).ToList();
附带一提,您可以像编写
t.IsDeleted == false
一样编写!t.IsDeleted
。