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

Add-Migration não funciona

Ola boa tarde,

Pessoal estou tendo problemas com o entity. Uso o VS 2017, os comandos para instalar o entity já tive de procurar aqui no fórum e consegui, porem esse do migration ainda não achei nada.

Acho que o curso está desatualizado ...

O erro que está dando é o seguinte:

PM> Enable-Migrations
O termo 'Enable-Migrations' não é reconhecido como nome de cmdlet, função, arquivo de script ou programa operável. Verifique a grafia
 do nome ou, se um caminho tiver sido incluído, veja se o caminho está correto e tente novamente.
Em linha:1 caractere:18
+ Enable-Migrations <<<< 
    + CategoryInfo          : ObjectNotFound: (Enable-Migrations:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

PM> Add-Migration criaUsuario
O termo 'Add-Migration' não é reconhecido como nome de cmdlet, função, arquivo de script ou programa operável. Verifique a grafia do 
nome ou, se um caminho tiver sido incluído, veja se o caminho está correto e tente novamente.
Em linha:1 caractere:14
+ Add-Migration <<<<  criaUsuario
    + CategoryInfo          : ObjectNotFound: (Add-Migration:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

Eu não consigo continuar a partir disso, estou preso no curso ... alguém pode me ajudar ?

4 respostas

Olá João,

qual entity framework você está usando? O .net framework ou o .net core?

Veja se executando este comando

Install-Package EntityFramework -IncludePrerelease

e restartando o Visual Studio ele resolve o problema.

Olá Lucas,

Boa tarde, então estou usando o .Net, eu dei o comando, ele executou e então restartei o VS,

Porem não foi, logo quando entro aparece este erro:

PM> Where-Object : Não é possível associar o parâmetro 'FilterScript'. Não é possível converter o valor "Name" do tipo "System.String" no
 tipo "System.Management.Automation.ScriptBlock".
Em D:\projetos\C#\lojaComEntity\packages\EntityFramework.Commands.7.0.0-rc1-final\tools\init.ps1:3 caractere:19
+ if (Get-Module | ? <<<<  Name -eq EntityFramework) {
    + CategoryInfo          : InvalidArgument: (:) [Where-Object], ParameterBindingException
    + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Commands.WhereObjectCommand

Join-Path : Não é possível associar o argumento ao parâmetro 'Path' porque ele é nulo.
Em D:\projetos\C#\lojaComEntity\packages\EntityFramework.Commands.7.0.0-rc1-final\tools\init.ps1:7 caractere:25
+ Import-Module (Join-Path <<<<  $PSScriptRoot EntityFramework.psd1) -DisableNameChecking
    + CategoryInfo          : InvalidData: (:) [Join-Path], ParameterBindingValidationException
    + FullyQualifiedErrorId : ParameterArgumentValidationErrorNullNotAllowed,Microsoft.PowerShell.Commands.JoinPathCommand

e quando eu tento usar os comandos novamente aparece isso:

PM> Enable-Migrations
No context type was found in the assembly 'lojaComEntity'.
PM> Add-Migration criaUsuario
No migrations configuration type was found in the assembly 'lojaComEntity'. (In Visual Studio you can use the Enable-Migrations command from Package Manager Console to add a migrations configuration).
PM>

Obrigado,

João Vitor.

solução!

Olá João,

note que agora o erro pelo menos mudou. Agora você está com problema com a versão do PowerShell do Windows. Outro aluno já teve esse problema antes, aqui o link com a solução que ele encontrou para resolver isto.

Mas eu já tenho o 4.0,

Seria esse o problema ?

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