public async Task <IActionResult> Score(string id) { Console.WriteLine("score requested for id=" + id); var repo = new TextRepository(); return(await RepeatLoad(() => { switch (repo.GetTextStatus(id)) { case TextStatus.Ready: return Ok(repo.GetScore(id)); case TextStatus.Rejected: return StatusCode((int)HttpStatusCode.Forbidden); default: return null; } })); }