1
resposta

Problema ao compilar a primeira aula

Bom dia! Bom, não estou conseguindo compilar, e o erro que o Visual Studio me mostra é o seguinte: "Gravidade Código Descrição Projeto Arquivo Linha Estado de Supressão Erro NETSDK1045 O SDK do .NET atual não dá suporte para direcionar a .NET Core 3.1. Direcione a .NET Core 2.1 ou inferior, ou use uma versão do SDK do .NET compatível com .NET Core 3.1. web C:\Program Files\dotnet\sdk\2.1.512\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.TargetFrameworkInference.targets 137"

E selecionei o ASP.NET core 2.0,

O erro apresentado no Console é o seguinte : "Startup.cs(34,28): error CS1061: 'List' não contém uma definição para "ad d" e não foi possível encontrar nenhum método de extensão "add" que aceite um pr imeiro argumento do tipo 'List' (você está se esquecendo de usar uma dire tiva ou uma referência de assembly?) [D:\asp net\web\web.csproj] Startup.cs(35,28): error CS1061: 'List' não contém uma definição para "ad d" e não foi possível encontrar nenhum método de extensão "add" que aceite um pr imeiro argumento do tipo 'List' (você está se esquecendo de usar uma dire tiva ou uma referência de assembly?) [D:\asp net\web\web.csproj] Startup.cs(36,28): error CS1061: 'List' não contém uma definição para "ad d" e não foi possível encontrar nenhum método de extensão "add" que aceite um pr imeiro argumento do tipo 'List' (você está se esquecendo de usar uma dire tiva ou uma referência de assembly?) [D:\asp net\web\web.csproj]

Ocorreu uma falha no build. Corrija os erros de build e execute novamente."

tentei usar Arraylist, mas acontece o erro CS0029, saberiam me ajudar?

segue o código abaixo:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using System.Collections;


namespace web
{
    public class Startup
    {
        // This method gets called by the runtime. Use this method to add services to the container.
        // For more information on how to configure your application, visit https://go.microsoft.com/fwlink/?LinkID=398940
        public void ConfigureServices(IServiceCollection services)
        {
        }

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.UseRouting();

            var livros = new List<Livro>();
            livros.add(new Livro("001", "Kama sutra", 12.99m));
            livros.add(new Livro("002", "Cachorro", 30.99m));
            livros.add(new Livro("003", "Java para baixinhos", 25.99m));


            app.UseEndpoints(endpoints =>
            {

                endpoints.MapGet("/", async context =>
                {

                    foreach (Livro livro in livros) {
                        await context.Response.WriteAsync($"{livro.Codigo,-10}{livro.Nome,-40}{livro.Preco.ToString("C"),10}\r\n");
                    }

                });
            });
        }
    }
}
1 resposta

Olá Jader, tudo bem?

Por mais que tenha trocado a estrutura de destino, a classe Startup ainda está usando a estrutura da versão 3.1, que isso fica meio que assunto para migração de versão do AspNet.

Primeiro de tudo, recomendo que instale a versão 2.1 do SDK do .Net Core.

Depois disso, se estiver criando um projeto via CLI, precisará especificar a versão da linguagem, para poder rodar com o AspNet 2.1: -f netcoreapp2.1

Exemplo: dotnet new web -f netcoreapp2.1

Ou então se for pelo assistente de criação, defina o projeto como 2.1.

Minha sugestão é recriar o projeto como foi descrito acima, utilizando uma versão anterior do Asp.Net Core .

Espero ter ajudado!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software