2
respostas

Erro ao Adicionar Componentes Razor usando o Entity Framework (CRUD)

Olá, bom dia!

Estou fazendo o tutorial do Tutorial da Microsoft "Parte 2, adicionar um modelo a um aplicativo Razor Pages no ASP.NET Core" nesse link:

https://learn.microsoft.com/pt-br/aspnet/core/tutorials/razor-pages/model?view=aspnetcore-8.0&tabs=visual-studio

Surge um erro na sessão "Fazer scaffold do modelo de filme" conforme print abaixo:

erro

Já tentei trocar a pasta onde o projeto é criado, porém o erro persiste.

Caso a imagem acima não apareça nesse post o erro é "Erro ao executar o gerador de código selecionado. Value cannot be null (Parameter 'path')"

Estou usando o Visual Studio 2022 com Windows 10 e sou administrador da máquina.

Alguém aqui no Fórum já passou pela mesma situação e poderia me ajudar na resolução desse problema?

Desde já agradeço pela atenção e retorno.

Obrigado!

2 respostas

Olá, Marconi! Tudo bem?

Esse erro "Value cannot be null (Parameter 'path')" geralmente ocorre quando algum caminho necessário para o processo de scaffold não está definido corretamente. Aqui estão algumas sugestões para resolver o problema:

  1. Verifique o Caminho do Projeto: certifique-se de que o caminho do projeto não contém caracteres especiais ou espaços que possam estar causando problemas.

  2. Verifique o Startup.cs: assegure-se de que o DbContext está configurado corretamente no método ConfigureServices no arquivo Startup.cs. Deve haver algo como:

    services.AddDbContext<RazorPagesMovieContext>(options =>
        options.UseSqlServer(Configuration.GetConnectionString("RazorPagesMovieContext")));
    
  3. Arquivo appsettings.json: verifique se o arquivo appsettings.json possui a string de conexão correta para o banco de dados. Deve ser algo assim:

    "ConnectionStrings": {
        "RazorPagesMovieContext": "Server=(localdb)\\mssqllocaldb;Database=RazorPagesMovieContext;Trusted_Connection=True;MultipleActiveResultSets=true"
    }
    
  4. Reinicie o Visual Studio: como ultima sugestão, simplesmente reiniciar o Visual Studio pode resolver problemas intermitentes.

Espero ter ajudado e bons estudos!

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

Olá Armano, boa tarde!

Obrigado pela reposta!

Seguem os meus comentários:

  1. Não tem espaços, c cedilha ou acentos no caminho do Projeto.

  2. Não tenho esse arquivo Startup.cs na solução. Será que ele não foi gerado na hora de criar o projeto? Você teria o código desse arquivo e onde ele fica armazenado na estrutura do diretório da solução?

  3. Essa connection string está no appsettings.json

Algumas coisas que eu já fiz também são:

  1. Troquei o nome da pasta ao criar um novo projeto.

  2. Executei o VS como Admin.

  3. Reinstalei os pacotes NuGet relacionados ao Entity Framework e Razor Pages com dotnet restore

  4. Adicionei manualmente a referência ao pacote de scaffolding: dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.Design

  5. As dependências necessárias estão corretamente instaladas e configuradas no meu projeto. Isso inclui pacotes como Microsoft.EntityFrameworkCore e Microsoft.VisualStudio.Web.CodeGeneration.Design.

  6. Inspecionei também o código do Program.cs, appsettings.json e outros arquivos, pois poderia ser aquela questão de barras duplas \ no caminho do diretório.