var query = _db.Chats
.Include(c => c.Participants.Where(cu=>cu.IsActive))
.Include(c=>c.LastMessage)
.ThenInclude(m => m.Sender)
.ThenInclude(cu => cu.User)
.Where(c =>
c.Participants.Any(cu => cu.UserId == _currentUser.MessengerUserId))
.OrderByDescending(c => c.LastMessage != null ? c.LastMessage.Timestamp : c.Created)
.AsNoTracking();