Tentei executar o comando 'Enable-Migrations' em um novo projeto e recebi a mensagem:
PM> Enable-Migrations
The term 'Enable-Migrations' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verif
y that the path is correct and try again.
At line:1 char:18
+ Enable-Migrations <<<<
+ CategoryInfo : ObjectNotFound: (Enable-Migrations:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
Mas em todos os outros projetos, o comando é executado corretamente.
Por que isso está acontecendo?
BTW, estou usando o VS2010 Professional SP1
EDIT: Reinstalei com o comando: Install-Package EntityFramework -IncludePrerelease e o problema desapareceu.
entity-framework
migration
Eduardo Brites
fonte
fonte
Respostas:
Apenas reiniciar o Visual Studio funcionou para mim. Não há necessidade de instalar pacotes, etc.
fonte
Eu reinstalei com o comando: Install-Package EntityFramework -IncludePrerelease e o problema desapareceu.
fonte
EntityFramework
apenas suporta o .net framework 4.0 e 4.5. Portanto, se você estiver usando o .net framework 4.6 ou superior, ele não funcionará.Esse problema está ocorrendo porque não temos o Entity Framework instalado. Instale o Entity Framework usando o comando abaixo.
Depois de instalado, escolha o projeto no menu suspenso do projeto padrão do console do gerenciador de pacotes.
Certifique-se de que pelo menos uma classe em seu projeto herda do contexto de dados, caso contrário, use a classe abaixo:
Se não fizermos isso, obteremos outro erro:
No context type was found in the assembly
Depois de concluir essas coisas, você pode executar
fonte
Reiniciar o Visual Studio com privilégios de administrador resolveu o problema para mim.
fonte
Verifique se você está executando o Visual Studio como administrador.
fonte
Eu tive o mesmo problema com o VS 2019 Preview, .Net Core e EntityFramework Core.
Acontece que eu tive que instalar via NuGet
Microsoft.EntityFrameworkCore.Tools
eMicrosoft.EntityFrameworkCore.Design
. Feito isso, funcionou como um encanto.fonte
Primeiro, "Install-Package EntityFramework -IncludePrerelease" e, em seguida, Reiniciar o Visual Studio como administrador trabalhou para mim juntos.
fonte
No Visual Studio 2012, tive o mesmo erro. Teve que desinstalar o NuGet (Ferramentas> Extensões e Atualizações> Instalado> Todos: NuGet Package Manager: botão Desinstalar). Em seguida, feche o Visual Studio. Em seguida, reabra o Visual Studio e reinstale o NuGet (Ferramentas> Extensões e Atualizações> Online> Galeria do Visual Studio: Gerenciador de Pacotes NuGet: botão Download). Em seguida, nas seguintes janelas: clique no botão Instalar e, em seguida, clique no botão Fechar. Em seguida, feche e reabra o Visual Studio.
fonte
O que corrigiu esse sintoma para mim (VS2013) é desinstalar e reinstalar o pacote EF com o Nuget. A diferença no arquivo csproj mudou isso ...
...nisso...
Ainda não entendo completamente o porquê, mas funcionou pelo menos.
fonte
No .NET Core, consegui alcançar a mesma resolução descrita na resposta aceita, inserindo o seguinte no console do gerenciador de pacotes:
fonte
Eu tive o mesmo problema e tentei a maioria das soluções fornecidas por outras pessoas, mas funcionou para mim nas etapas abaixo. Eu tenho o VS 2017.
Passos:
então crie uma classe como
e, finalmente, executar
O que não funcionou para mim:
: Reiniciando o VS.
: apenas o comando "Enable-Migrations", que não possui -EnableAutomaticMigrations.
: restaurando ou atualizando o Nuget Package Manager.
Meu erro original no começo foi
/ * O termo 'habilitar-migração' não é reconhecido como o nome de um cmdlet, função, arquivo de script ou programa operável. Verifique a ortografia do nome ou, se um caminho foi incluído, verifique se o caminho está correto e tente novamente. ~~ + CategoryInfo: ObjectNotFound: (enable-migration: String) [], CommandNotFoundException * /
fonte
Eu tive o mesmo problema e descobri que é por causa de alguns caracteres no caminho do projeto, como [ou] eu corrijo o caminho do projeto e funcionou bem!
fonte
Enable-Migrations -EnableAutomaticMigrations
fonte
Como eu já tinha a pasta de migrações, reiniciei o Visual Studio e executei o Update-Database -verbose no console do gerenciador de pacotes. Isso funcionou para mim
fonte
Eu tentei todas as sugestões acima, mas nada funcionou para mim, então eu atualizei
Nuget Package Manager
e funcionou ..fonte
Instale a estrutura da Entidade no projeto atual usando o comando abaixo: PM> Install-Package EntityFramework -IncludePrerelease
Adicione uma classe "MyDBContext" na pasta Model, conforme indicado abaixo:
classe pública MyDBContext: DbContext {public MyDBContext () {}}
Agora habilite as migrações para o projeto atual com o comando abaixo: PM> enable-migrations
fonte
executar como administrador vs = >> aberto Abra o projeto
fonte
No VS 2013, tente instalar o UPDATE 1 (RC1) e o problema foi resolvido.
fonte
Eu tinha vários projetos na solução, mas tinha o projeto padrão correto definido, então achei que deveria funcionar.
No final, eu tive que adicionar a
-StartupProject MyProjectName
opção ao comandofonte
Nenhuma dessas soluções funcionou para mim. Minha solução foi excluir
packages/EntityFramework.6.1.3
eRestore NuGet Packages
Notei que
packages/EntityFramework.6.1.3/tools/EntityFramework.psd1
estava faltando, então essa era uma causa provável. Como foi removido em primeiro lugar, embora eu não tenha idéia.fonte
Verifique se a seção de configuração "entityFramework" existe e está descrita no seu arquivo .config
fonte
Verifique a versão do Entity Framework.
se for 6.3, faça o downgrade para 6.2 e deve funcionar perfeitamente
fonte
Eu apenas tive o mesmo problema no núcleo asp.net VS2019
Isso resolveu:
Não se esqueça de definir o projeto padrão no Package Manager Console para o seu projeto de banco de dados, caso seja diferente.
Durante a execução das migrações, o projeto padrão também parece desempenhar um papel. Em uma etapa posterior, ajudou a instalar isso no meu projeto de inicialização principal (não no projeto de banco de dados EF):
fonte
se você criar um projeto da Web MVC Você deve selecionar Autenticação ao criar o projeto. por padrão não está selecionado.
fonte
o downgrade para 6,2 me ajudou.
.NET Framework versão 4.6.1
Projeto em formato antigo (não .NET Standard) O
Visual Studio deve ser aberto com direitos de administrador para a migração inicial.
Eu acho que o EF com a versão acima de 6.2 requer o .NET Framework mais recente.
fonte
Verifique se o projeto está aberto na janela Solution Explorer.
Essa pode ser a causa do seu problema.
fonte