//[ResponseCache(Duration = 5000)] public async Task <IActionResult> GetLevelLearnedSpellsAsync([FromServices] ILevelLearnedSpellRepository levelLearnedSpellRepository, [FromServices] ITypeConverterProvider <SpellLevelLearned, SpellLevelLearnedDefinition> converter) { SpellLevelLearned[] levelLearneds = await levelLearnedSpellRepository.RetrieveAllAsync(); return(Json(CreatedSpellLevelLearnedCollectionResponse(levelLearneds, converter))); }
//[ResponseCache(Duration = 5000)] public async Task <IActionResult> GetLevelLearnedSpellsForClassAndLevelAsync([FromRoute(Name = "class")] EntityPlayerClassType classType, [FromRoute] int level, [FromServices] ILevelLearnedSpellRepository levelLearnedSpellRepository, [FromServices] ITypeConverterProvider <SpellLevelLearned, SpellLevelLearnedDefinition> converter) { if (!Enum.IsDefined(typeof(EntityPlayerClassType), classType)) { throw new InvalidEnumArgumentException(nameof(classType), (int)classType, typeof(EntityPlayerClassType)); } if (level < 0) { return(Json(new SpellLevelLearnedCollectionResponseModel(Array.Empty <SpellLevelLearnedDefinition>()))); } SpellLevelLearned[] levelLearneds = await levelLearnedSpellRepository.RetrieveAllAsync(classType, level); return(Json(CreatedSpellLevelLearnedCollectionResponse(levelLearneds, converter))); }