protected override void VisitOrderings(ObservableCollection <Ordering> orderings, QueryModel queryModel, OrderByClause orderByClause) { base.VisitOrderings(orderings, queryModel, orderByClause); if (clause.HasFlag(VisitorClause.Order)) { foreach (var ordering in orderings) { var member = ordering.Expression as MemberExpression; string sort = "&sort={\"" + mapPropertyToName[member.Member.Name] + "\":" + (ordering.OrderingDirection.ToString().Equals("Asc") ? "1" : "-1") + "}"; builderMongoQuery.AddModifier(sort); } } }