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

Problemas na importação do projeto LojaRazor

Olá!

Não estou conseguindo importar o projeto LojaRazor, para fazer os exercícios do curso.

Estou utilizando o Visual Studio 2010 e instalei o SP1 e o pacote do ASP.NET MVC 4. Ao abrir a Solution, surge a seguinte mensagem, no Solution Explorer:

+ Solution 'LojaRazor' (0 projects)
  +-- LojaRazor (incompatible)
      +-- This project is incompatible with the current version of Visual Studio.

Se alguém puder me ajudar a importar o projeto do curso para o meu Visual Studio 2010, eu agradeceria muito.

Obrigado!

Alessandro Larangeiras.

6 respostas

Olá Alessandro

Esse problema está acontecendo por que o projeto foi desenvolvido em um visual studio posterior ao que você está utilizando.

Uma solução simples para o seu problema seria criar um projeto do tipo Asp.Net MVC 4 vazio dentro do Visual Studio 2010 e dentro desse projeto você vai copiar todos os arquivos do projeto que foi baixado com exceção dos arquivos com extensões: .sln, .csproj e *.csproj.user.

Alternativamente, você pode tentar migrar manualmente o projeto para a versão 2010. Abra o arquivo .sln que está dentro do zip e procure a primeira linha do arquivo:

Microsoft Visual Studio Solution File, Format Version 12.00

E troque o Format Version para a versão do 2010:

Microsoft Visual Studio Solution File, Format Version 11.00

Essa migração nem sempre funciona, mas vale a pena tentar. Eu não tenho atualmente o 2010 na minha máquina para testar a migração, mas boa sorte e bons estudos.

Olá, Victor! Muito obrigado!

Desde a sua resposta, ontem, estou fazendo a conversão do projeto e só agora obtive um resultado final.

Optei por sua primeira dica, a de criar um projeto do tipo ASP.NET MVC 4 vazio, no Visual Studio 2010, e copiar para ele todos os arquivos do projeto baixado, exceto os de extensão: .sln, .csproj e *.csproj.user. Isso funcionou muito bem! Só tive de incluir depois, no Solution Explorer, os arquivos e pastas extras, que faziam parte apenas do projeto baixado.

Também tive de atualizar o .NET 4 para o 4.5. Assim, consegui rodar o projeto.

Só faltou a anotação EmailAddressAttribute, na classe Usuario.cs, que o Visual Studio insiste em não encontrar. Andei lendo que esta anotação faz parte do .NET 4.5 e esta é a minha versão agora. Então, não faz sentido o VS acusar erro.

Se você também puder me ajudar neste ponto, eu agradeceria muito.

Para o pessoal que vem do curso FN23 ASP.NET MVC3 e estiver passando pelo mesmo problema, deixo, abaixo, um passo a passo de tudo o que fiz:

(1) Configuração inicial: Visual Studio 2010 + ASP.NET MVC 3.

(2) Instale o Service Pack 1 for Visual Studio 2010.

(3) Instale o pacote de atualização do Visual Studio para o ASP.NET MVC 4.

(4) No Visual Studio 2010, crie um projeto do tipo ASP.NET MVC 4 vazio (nomeando-o como LojaRazor) e, depois, feche a IDE. Copie, para a pasta do projeto recém-criado, todos os arquivos do projeto baixado, exceto os de extensão: .sln, .csproj e *.csproj.user.

(5) Abra o Visual Studio 2010 novamente e o projeto LojaRazor recém-criado. No Solution Explorer, clique no botão SHOW ALL FILES, para exibir todos os arquivos que estão na pasta do projeto, mas que ainda não foram incluídos. Na árvore de componentes do projeto, na Solution Explorer, surgirão, em cinza, a pasta DAO, algumas classes da pasta Models etc. Inclua no projeto tudo que estiver em cinza, exceto as pastas BIN e OBJ.

(6) Se a sua versão do .NET for ainda a 4.0, instale o pacote de atualização para o .NET 4.5.

(7) O projeto LojaRazor agora deve executar. Como disse acima, o Visual Studio ainda deve acusar erro na anotação EmailAddressAttribute, na classe Usuario.cs. Neste caso, é possível comentá-la só para verificar que o projeto está rodando.

Victor, agradeço novamente por sua ajuda!

Um grande abraço!

Alessandro Larangeiras.

Olá Alessandro

Obrigado por postar a sua receita para resolver o problema. Para fazer o EmailAddressAttribute funcionar você precisa mudar a versão do .Net framework que será utilizada na compilação do código pelo visual studio (eu acho que o padrão do visual studio 2010 é .Net 4.0).

Para isso, abra a janela de configurações do projeto (clique com o botão direito do mouse no projeto e escolha a opção Properties) e dentro da janela de propriedades, procure uma configuração chamada Target Framework. Mude essa configuração para .Net Framework 4.5.

Olá, Victor! Desculpe a demora em responder.

No menu PROPERTIES do projeto, combobox Target Framework, não há a opção .NET Framework 4.5.

Como eu já tenho essa versão instalada, seria o caso de refazer todo o processo de conversão do projeto (criar um novo projeto ASP.NET MVC 4 vazio e copiar os arquivos e pastas novamente)?

Obrigado por sua ajuda!

Alessandro Larangeiras.

solução!

Olá Alessandro

Parece que o Visual Studio 2010 não possui suporte para projetos com o target .Net Framework 4.5. Só a partir do 2012 é que colocaram suporte para o 4.5

Para tentar desviar dessa limitação, você pode tentar adicionar manualmente as dlls necessárias do .Net Framework 4.5 para ver se o Visual Studio aceita essas referências.

Para isso, abra a pasta references do projeto e remova o assembly System.ComponentModel.DataAnnotations.dll e depois clique com o botão direito na pasta References e escolha a opção Add Reference

Dentro dessa janela do add reference você buscar o assembly do System.ComponentModel.DataAnnotations.dll dentro do diretório onde você fez a instalação do .net 4.5.

Mas não se preocupe muito com o EmailAddressAttribute por que ele não é essencial para o entendimento do curso.

Olá, Victor! Obrigado pela explicação!

Algum dos cursos de .NET da Alura disponibilizados até agora necessitará da anotação EmailAddressAttribute? Se não, darei prosseguimento às aulas por agora e tentarei adicionar as DLLs manualmente mais para frente.

Muito obrigado por toda a ajuda!

Alessandro Larangeiras.

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