Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

HTTP ERROR 500

using Alura.ListaLeitura.App.HTML; using Alura.ListaLeitura.App.Negocio; using Alura.ListaLeitura.App.Repositorio; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Routing; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks;

namespace Alura.ListaLeitura.App.Logica { public class LivrosLogica {

    public static Task ExibeDetalhes(HttpContext context)
    {
        int id = Convert.ToInt32(context.GetRouteValue("id"));
        var repo = new LivroRepositorioCSV();
        var livro = repo.Todos.First(l => l.Id == id);
        return context.Response.WriteAsync(livro.Detalhes());
    }

    private static string CarregaLista(IEnumerable<Livro> livros)
    {
        var conteudoArquivo = HTMLUtils.CarregaArquivoHTML("lista");

        foreach (var livro in livros)
        {
            conteudoArquivo = conteudoArquivo
                .Replace("#NOVO-ITEM#", $"<li>{livro.Titulo} - {livro.Autor}</li>#NOVO-ITEM#");
        }

        return conteudoArquivo.Replace("#NOVO-iTEM#", " ");
    }

    public static Task LivrosParaLer(HttpContext context)
    {
        var _repo = new LivroRepositorioCSV();
        var html = CarregaLista(_repo.ParaLer.Livros);
        return context.Response.WriteAsync(html);
    }

    public static Task LivrosLendo(HttpContext context)
    {
        var _repo = new LivroRepositorioCSV();
        var html = CarregaLista(_repo.ParaLer.Livros);
        return context.Response.WriteAsync(html);
    }

    public static Task LivrosLidos(HttpContext context)
    {
        var _repo = new LivroRepositorioCSV();
        var html = CarregaLista(_repo.ParaLer.Livros);
        return context.Response.WriteAsync(html);
    }
}

}

A parte de Cadastro de um novo livro funciona corretamente e mostra a mensagem de que o livro foi cadastrado com sucesso, mas quando tento imprimir na tela a lista, aparece o erro 505. Já comparei meu código com o do projeto original e não consigo identificar o erro. Também já tentei a opção de Copiar para diretório de saída, sem sucesso.

2 respostas
solução!

Emily, boa tarde!

O http error número 505 indica um problema de versão no servidor. Faça um teste tentando compilar e rodar a aplicação da aula. Não apenas comparando o código porque pode ser algo desatualizado. Se conseguir rodar o projeto da aula, o problema está em alguma versão de pacote ou framework do seu projeto. Se não conseguir rodar o projeto da aula também, pode faltar alguma instalação na sua máquina com relação a framework.

Bom pelo menos é isso que eu acho e tentaria investigar.

Se consegui te ajudar, marque a resposta como solucionada, por favor! Obrigado! Abs

Obrigada!