using System.ComponentModel.DataAnnotations; using Microsoft.AspNetCore.Mvc; namespace AyaNova.Api.ControllerHelpers { public sealed class PagingOptions { public const int MaxPageSize = 1000; public const int DefaultOffset = 0; public const int DefaultLimit = 25; [FromQuery] [Range(0, int.MaxValue)] public int? Offset { get; set; } [FromQuery] [Range(1, MaxPageSize, ErrorMessage = "Limit must be greater than 0 and less than 1000.")] public int? Limit { get; set; } //Data filter id to use with this list query //0 or less means no filter public long DataFilterId { get; set; } } }