public async Task <IActionResult> GetEntries(string parameter, string queryType, int?since, int?until) { var qt = int.TryParse(queryType, out var num) ? EnumConversions.FromInt <QueryType>(num) : EnumConversions.FromString <QueryType>(queryType); if (!qt) { return(BadRequest($"Invalid query type '{queryType}'.")); } TermModel?termSince = null; if (since != null) { var tmp = await _terms.FromIdAsync(since.Value); if (!tmp) { return(BadRequest($"Invalid since term '{since}'.")); } termSince = tmp.Value; } TermModel?termUntil = null; if (until != null) { var tmp = await _terms.FromIdAsync(until.Value); if (!tmp) { return(BadRequest($"Invalid since term '{since}'.")); } termUntil = tmp.Value; } return(Ok(await _repo.QueryEntriesAsync(parameter, qt.Value, termSince, termUntil))); }