Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Comandos de Entity Framework Core

11/17
Recursos

Aportes 24

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Al ejecutar el comando dotnet ef me daba un error que no reconocía la instrucción:

Lo solucione de la siguiente manera:

  • dotnet tool install --global dotnet-ef
  • dotnet ef migrations add InitialCreate

Si les sale este error:

Your startup project 'APISQLPlatzi' doesn't reference Microsoft.EntityFrameworkCore.Design. This package is required for the Entity Framework Core Tools to work. Ensure your startup project is correct, install the package, and try again.

Instalen el siguiente package:

dotnet add package Microsoft.EntityFrameworkCore.Design

.NET CORE hasta el momento se basa en migraciones

  • dotnet ef migrations add InitialCreate --> Para agregar una migracion
  • dotnet ef migrations update --> Para afectar los cambios en la base de datos

¿Que son los DataAnnotations?
Agregan un significado adicional a los datos al agregar etiquetas de atributos. La ventaja de utilizar la función de anotación de datos es que al aplicar atributos de datos, podemos gestionar la definición de datos en un solo lugar y no es necesario volver a escribir las mismas reglas en varios lugares.

La característica de anotación de datos se introdujo en .NET 3.5 y el System.ComponentModel.DataAnnotations espacio de nombres contiene las clases que se utilizan como atributos de datos.

Los atributos de anotación de datos se dividen en tres categorías:
Atributos de validación : se utilizan para aplicar reglas de validación.
Mostrar atributos : se utiliza para especificar cómo se muestran los datos de una clase / miembro en la interfaz de usuario.
Atributos de modelado : se utiliza para especificar el uso previsto del miembro de la clase y la relación entre las clases.
Fuente: https://bit.ly/2nKuXye

algunos comandos y funcionamiento de Entity Framework:
https://docs.microsoft.com/en-us/ef/core/managing-schemas/migrations/?tabs=dotnet-core-cli

tener en cuenta que cada migración crea un folder con la migración y un registro en la base de datos con la información de la migración

La consola me da este error:

$ dotnet ef migrations add InitialCreate
Build started…
Build failed.

no indica donde esta el error

dotnet ef migrations add InitialCreate  

Si presentan problemas con el comando dontnet ef ejecuten este comando

dotnet tool install --global dotnet-ef --version 3.1.4

.NET CORE hasta el momento se basa en migraciones
- dotnet ef migrations add InitialCreate --> Para agregar una migracion
- dotnet ef migrations update --> Para afectar los cambios en la base de datos

¿Que son los DataAnnotations?
Agregan un significado adicional a los datos al agregar etiquetas de atributos. La ventaja de utilizar la función de anotación de datos es que al aplicar atributos de datos, podemos gestionar la definición de datos en un solo lugar y no es necesario volver a escribir las mismas reglas en varios lugares.

La característica de anotación de datos se introdujo en .NET 3.5 y el System.ComponentModel.DataAnnotations espacio de nombres contiene las clases que se utilizan como atributos de datos.

Los atributos de anotación de datos se dividen en tres categorías:
Atributos de validación : se utilizan para aplicar reglas de validación.
Mostrar atributos : se utiliza para especificar cómo se muestran los datos de una clase / miembro en la interfaz de usuario.
Atributos de modelado : se utiliza para especificar el uso previsto del miembro de la clase y la relación entre las clases.
Fuente: https://bit.ly/2nKuXye

Me salia error al ejecutar:

dotnet ef migrations add InitialCreate

Lo solucione poniendo en mi proyecto con extension .scproj lo siguiente:

<ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.1.8" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.1.8" />
    <PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="3.1.8">

Ademas desde el terminal, adentro de la carpeta del proyecto ejecute esto:

dotnet add package Microsoft.EntityFrameworkCore
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
dotnet add package Microsoft.EntityFrameworkCore.Design
dotnet tool install --global dotnet-ef

Al correr el comanado dotnet ef migrations add InitialCreatr les devuelve este error:

**Could not execute because the specified command or file was not found.
Possible reasons for this include:

  • You misspelled a built-in dotnet command.
  • You intended to execute a .NET Core program, but dotnet-ef does not exist.
  • You intended to run a global tool, but a dotnet-prefixed executable with this name could not be found on the PATH.**

Se puede corregir O NO el problema con el siguiente comando: dotnet tool install --global dotnet-ef En caso de que el error persista, utilice los siguientes comandos para correguirlo:

PATH="$PATH:$HOME/.dotnet/tools/" Para ubicar el comando dentro del PATH de la terminal, luego dotnet ef database update, para actualizar esta ruta en memoria, es posible que le pidan la instalacion de Microsoft.EntityFrameworkCore.Design, la cual deben proseguir a insttalar y ejecutar de nuevo el primer comando para realizar la migration. Espero que les sea de ayuda… A mi me funciono asi,

Me marca errror:
error CS1061: ‘IConfiguration’ does not contain a definition for ‘getConnectionString’ and no accessible extension method ‘getConnectionString’ accepting a first argument of type ‘IConfiguration’ could be found (are you missing a using directive or an assembly reference?)

¿Alguien le pasó y cómo lo solucionó?

Woww le sigo el hilo pero mientras al profesor Amin Espinoza no sale ningun error a mi me sale 500, obvio asi aprendo mas! pero el tiempo es corto 😦

Para Abril del 2022 los pasos son los siguientes

dotnet tool install --global dotnet-ef
dotnet tool update --global dotnet-ef
dotnet add package Microsoft.EntityFrameworkCore.Design
dotnet ef migrations add InitialCreate

Trouble shooting. en mi shell, zsh, no se añadió al $PATH automáticamente así que tuve que añadir la herramienta dotnet-ef. Se encuentra en la ruta

$HOME/.dotnet/tools/

Saludos y suerte

A mi me funciono hacer esto

dotnet add package Microsoft.EntityFrameworkCore
dotnet add package Microsoft.EntityFrameworkCore.SqlServer
dotnet add package Microsoft.EntityFrameworkCore.Tools

Build Failed, sigo con ese problema, ya intenté resolver de todas las formas que comparten en los comentarios, y el problema persiste.

Al ejecutar el comando dotnet ef migrations InitialCreate me sale el error Build Failes. Hay alguien que puede revisar las versiones? o cuales versiones son las que hay que instalar para que funcione? se deben instalar las versiones antes de ejecutar? se debe borrar las versiones ya instaladas en caso de que no sean las correctas? como se desintala versiones? o simplemente se instala las versiones necesarias y se actualizan a la ultima instalada?!

Al ejecutar el comando dotnet ef migrations InitialCreate me sale el error Build Failes. Hay alguien que puede revisar las versiones? o cuales versiones son las que hay que instalar para que funcione? se deben instalar las versiones antes de ejecutar? se debe borrar las versiones ya instaladas en caso de que no sean las correctas? como se desintala versiones? o simplemente se instala las versiones necesarias y se actualizan a la ultima instalada?

https://yadi.sk/i/zvhiJ1nE_Bc3vw

Buenas, me salió este error: "Unable to create an object of type ‘ContactsContext’. For the different patterns supported at design time, see https://go.microsoft.com/fwlink/?linkid=851728"
A alguien mas le paso? y como lo soluciono?

Es migrations y no migration

Todos los modelos en C# deben de tener una llave principal para moder funcionar

Como una alternativa, se puede usar visual studio community,

Excelente curso

Si a alguien se le presenta este error al ejecutar dotnet:

dotnet ef migrations add InitialCreate 
Could not execute because the specified command or file was not found.
Possible reasons for this include:
  * You misspelled a built-in dotnet command.
  * You intended to execute a .NET Core program, but dotnet-ef does not exist.
  * You intended to run a global tool, but a dotnet-prefixed executable with this name could not be found on the PATH.```

Usar:
`dotnet tool install --global dotnet-ef`

.NET core 3.0 maneja este tool por separado.
[fuente](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-3.0/breaking-changes#dotnet-ef)

hice todos los pasos, los revise y me aparece Build failed sin ningún error. alguna solución?

Dejo en orden los comandos como me funcionó:

    dotnet tool install --global dotnet-ef
    PATH="$PATH:$HOME/.dotnet/tools/"
    dotnet ef migrations add InitialCreate
    dotnet ef database update