public override int GetHashCode()
        {
            var result = 37;

            unchecked
            {
                result = result * 17 + base.GetHashCode();
                result = result * 17 + (IterationEntryListIds?.UncheckedSum() ?? 0);
                result = result * 17 + (FlatteningEntryListIds?.UncheckedSum() ?? 0);
                result = result * 17 + (RelationshipFields?.UncheckedSum() ?? 0);
                result = result * 17 + (EntryDetailsRelationshipFields?.UncheckedSum() ?? 0);
                result = result * 17 + (PrimaryFilters?.Select(f => f.GetHashCode()).UncheckedSum() ?? 0);
                result = result * 17 + (SecondaryFilters?.Select(f => f.GetHashCode()).UncheckedSum() ?? 0);
                result = result * 17 + (Grouping?.GetHashCode() ?? 0);
                result = result * 17 + (Sorting?.GetHashCode() ?? 0);
                result = result * 17 + (Paging?.GetHashCode() ?? 0);
                result = result * 17 + (Columns?.GetHashCode() ?? 0);
                result = result * 17 + IncludeRecordsCount.GetHashCode();
                result = result * 17 + IsSecondaryColumnsFilterEnabled.GetHashCode();
                result = result * 17 + IsMultisortingEnabled.GetHashCode();
            }

            return(result);
        }