public void AppendQueryString(StringBuilder path)
{
path.Append("?");
AppendMinimalQueryString(path);
path
.Append("&start=").Append(Start)
.Append("&pageSize=").Append(PageSize)
.Append("&aggregation=").Append(AggregationOperation);
FieldsToFetch.ApplyIfNotNull(field => path.Append("&fetch=").Append(Uri.EscapeDataString(field)));
GroupBy.ApplyIfNotNull(field => path.Append("&groupBy=").Append(Uri.EscapeDataString(field)));
SortedFields.ApplyIfNotNull(
field => path.Append("&sort=").Append(field.Descending ? "-" : "").Append(Uri.EscapeDataString(field.Field)));
if (SkipTransformResults)
{
path.Append("&skipTransformResults=true");
}
if (Cutoff != null)
{
var cutOffAsString =
Uri.EscapeUriString(Uri.EscapeDataString(Cutoff.Value.ToString("o", CultureInfo.InvariantCulture)));
path.Append("&cutOff=").Append(cutOffAsString);
}
if (CutoffEtag != null)
{
path.Append("&cutOffEtag=").Append(CutoffEtag.Value.ToString());
}
if(DebugOptionGetIndexEntries)
path.Append("&debug=entries");
}