1
resposta

Problema na rota Artista/nome

meu navegador esta retornando nulo:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade
Meu program:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade
Por algum motivo, nao esta reconhecendo quando adiciono {nome}.

DAL:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta

Olá, Felipe! Tudo certo?

Pelo erro que você está recebendo, parece que o problema está relacionado a um valor nulo que está sendo passado em algum ponto do seu código, especificamente na comparação de strings. Vamos revisar alguns pontos que podem estar causando esse problema:

  1. Verificar se nome é nulo: Antes de fazer a comparação, verifique se o parâmetro nome não é nulo. Você pode adicionar uma verificação logo no início da função:

    app.MapGet("/Artistas/{nome}", (string nome) =>
    {
        if (string.IsNullOrEmpty(nome))
        {
            return Results.BadRequest("Nome não pode ser nulo ou vazio.");
        }
    
        var dal = new DAL<Artista>(new ScreenSoundContext());
        var artista = dal.RecuperarPor(a => a.Nome.ToUpper().Equals(nome.ToUpper()));
        
        if (artista is null)
        {
            return Results.NotFound();
        }
        return Results.Ok(artista);
    });
    
  2. Verificar o método RecuperarPor: Certifique-se de que o método RecuperarPor está retornando corretamente um objeto ou null quando não encontra o artista. Se houver algum problema na implementação desse método, pode ser necessário revisá-lo.

  3. Banco de dados e contexto: Verifique se o ScreenSoundContext está configurado corretamente e se a conexão com o banco de dados está funcionando. Problemas de configuração podem resultar em consultas que não retornam os dados esperados.

Espero que essas dicas ajudem a resolver o problema. Bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.