Los comandos EF7 no funcionan en VS2015 CTP 6

asp.net-mvc-5 entity-framework-core

Pregunta


Estoy intentando ejecutar la migración de ef7 en el nuevo proyecto de vista previa de asp.net 5.
Pasos que tomé:

  1. Se creó un nuevo proyecto basado en la plantilla "ASP.NET 5 preview starter web"
  2. Constrúyelo
  3. Prueba el comando Add-Migration en la consola de Package Manager

Resultado:

El término 'Agregar-Migración' no se reconoce como el nombre de un cmdlet, función, archivo de secuencia de comandos o programa operable.

También intento este comando:

Install-Package EntityFramework.Commands -Pre

Creo que para el proyecto VS 2015 es redundante, se ejecutó pero aún no se reconoció Add-Migration.

Gracias de antemano por las pistas ...

Respuesta aceptada

Los comandos de NuGet no funcionan con proyectos ASP.NET 5. Deberá usar las versiones de la línea de comandos de ASP.NET 5 de los comandos. (Por ejemplo, k ef migration add migr k ef migration add ) Tenemos un problema aspnet / DNX # 952 abierto para desbloquear este escenario, pero no se ha visto mucha actividad.

Para obtener más información sobre los Comandos ASP.NET, vea mis Migraciones EF7 posteriores : Comandos ASP.NET .


Respuesta popular

Ok, sé que esta es una pregunta antigua y ya ha sido respondida técnicamente. Es decir, si desea abrir el símbolo del sistema y hacerlo. La causa raíz de este problema es que el módulo de PowerShell no se está inicializando. Aunque hay una solución simple. Solo necesitas inicializar el modulo. Ve a tu explorador de soluciones. Vaya a Referencias >> .NETCoreApp, Versión = v1.0 y luego desplácese hacia abajo hasta que encuentre Microsoft.EntityFrameworkCore.Tools, haga clic con el botón derecho y muestre las propiedades. Toma nota del camino que debe ser algo así como

C: \ Users \ YourUserName \ .nuget \ packages \ Microsoft.EntityFrameworkCore.Tools \ 1.0.0-preview2-final

Una vez que tenga que ir a la ubicación de la ruta en el explorador de archivos. Deberías ver otra carpeta llamada herramientas. Dentro de esa carpeta verá un archivo .ps1 llamado init.ps1. Este es el módulo que necesitamos inicializar. Entonces, vuelva a Visual Studio, estoy usando VS 2015 pro y Win 10 pro, abra la consola del administrador de paquetes. Escriba lo siguiente

cd "C: \ Users \ YourUserName \ .nuget \ packages \ Microsoft.EntityFrameworkCore.Tools \ 1.0.0-preview2-final \ tools"

y presiona enter. Luego, para inicializar un módulo en PowerShell solo necesita escribir

. . \ init.ps1

o creo que puedes hacer todo el camino y obtener los mismos resultados para que así sea

C: \ Users \ YourUserName \ .nuget \ packages \ Microsoft.EntityFrameworkCore.Tools \ 1.0.0-preview2-final \ tools \ init.ps1

Desafortunadamente, tendría que hacer esto cada vez que aparezca ese error, pero no es tan malo si solo guarda la ruta en un archivo .txt o la comenta en algún lugar de su proyecto que sea fácil de encontrar.




Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué