marcelohnq / costumer-api

API application for clients, products, and payments. | ASP.NET, API, GitHub Actions, Unit Tests, Integration Tests, TestContainers, Coverage
2 stars 0 forks source link

Parte1Controller #1

Closed marcelohnq closed 7 months ago

marcelohnq commented 7 months ago

Esse controller foi criado para gerar uma API que sempre retorna um número aleatório. Você pode vê-lo funcionando ao rodar o projeto e na página do Swagger, clique em Parte 1 > Try it Out > Execute.

Esse código, no entanto, tem algum problema: ele sempre retorna o mesmo valor. Seu trabalho, portanto, é corrigir esse comportamente: cada vez que a chamada é realizada um número diferente deverá ser retornado.

marcelohnq commented 7 months ago

O erro estava em RandomService.cs, no método GetRandom. Quando trabalhamos com a funcionalidade Random, não podemos ficar recriando uma instância para ele, como a seguir:

return new Random(seed).Next(100);

Assim, a correção é manter uma instância única de Random, enquanto estiver utilizando o RandomService:

private readonly Random _random;

public RandomService()
{
    _random = new Random();
}