public static CamlOrderBy Combine(CamlOrderBy firstOrderBy, CamlOrderBy secondOrderBy) { CamlOrderBy orderBy = null; var fieldRefs = new List<CamlFieldRef>(); if (firstOrderBy?.FieldRefs != null) { fieldRefs.AddRange(firstOrderBy.FieldRefs); } if (secondOrderBy?.FieldRefs != null) { fieldRefs.AddRange(secondOrderBy.FieldRefs); } if (fieldRefs.Count > 0) { orderBy = new CamlOrderBy(fieldRefs); } return orderBy; }
public static CamlOrderBy ThenBy(this CamlOrderBy orderBy, CamlFieldRef fieldRef) { if (orderBy == null) { orderBy = new CamlOrderBy(fieldRef); } var fields = new List<CamlFieldRef>(orderBy.FieldRefs) { fieldRef }; return new CamlOrderBy(fields); }