#NetCore crear una base de datos CodeFirst

Agrega los siguientes NuGet packages a un proyecto .net Core:

Microsoft.EntityFrameworkCore

Microsoft.EntityFrameworkCore.SqlServer

Microsoft.EntityFrameworkCore.Tools

 

Crea una carpeta con el nombre “Models

Agrega una clase con el nombre “User

Agregale las referencias a la clase:

using System.ComponentModel.DataAnnotations;

using System.ComponentModel.DataAnnotations.Schema;

 

Agrega el siguiente código a la clase:

    [Table(“Users”, Schema = “dbo”)]

    public class User

    {

        [Key]

        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]

        public int Id { get; set; }

        [Required]

        [Column(TypeName = “varchar(20)”)]

        public string Username { get; set; }

        [Required]

        [Column(TypeName = “varchar(20)”)]

        public string Password { get; set; }

    }

 

Agrega una clase con el nombre “EFDataContext

Agregale la referencia:

using Microsoft.EntityFrameworkCore;

 

Agrega el siguiente código a la clase:

    public class EFDataContext : DbContext

    {

        public DbSet<User> Users { get; set; }

        protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)

        {

            optionsBuilder.UseSqlServer(@”data source=ServerName; Initial Catalog=DBName;User ID=DBUsername; Password=DBPassword”);

        }

    }

Abre el “Package Manager Console

Agrega migrations con el siguiente comando:

Add-Migration InitialCreate

 

En el directorio raíz del proyecto aparece una carpeta con el nombre “Migrations

Actualiza la base de datos para generar la tabla con el siguiente comando:

Update-Database

 

Listo, la base de dados “DBName” ha sido creada con la tabla “Users

 

Nota:

En caso de hacer cambios en el código y querer actualizarlos en la base de datos elimina la carpeta “Migrations” y ejecuta de nuevo los comandos para generar el migrations y actualizar la base de datos

Probado en: .net Core 2.2