public async Task <Run> ModifyRun(Guid playerId, Guid runId, ModifiedRun modifiedRun) { Player player = await GetPlayer(playerId); if (player.IsBanned) { throw new NoPrivilegesException($"Player {player.Name} is banned!"); } foreach (var run in player.Runs) { if (run.Id == runId) { run.TimeTaken = modifiedRun.TimeTaken; FilterDefinition <Player> filter = Builders <Player> .Filter.Eq(p => p.Id, player.Id); await collection.ReplaceOneAsync(filter, player); return(run); } } throw new NotFoundException(); }
public async Task <Run> Modify(Guid playerId, Guid runId, ModifiedRun run) { return(await repository.ModifyRun(playerId, runId, run)); }