El modelo con el que trabajaremos será para almacenar datos de Alumnos (igual que en la practica 16 pero en diferente
base de datos) con los siguientes datos:
Donde:
Los campos deben comenzar con una mayúscula.
Se debe agregar un campo Id el cual fungirá como llave primaria (esto es automático)
Los atributos deben ser públicos o no serán creados como columnas en la tabla.
La tabla se llamará como el modelo agregando la palabra Items.
Los campos serán:
o Id: int
o Nc: string de 8 caracteres respetando solo números.
o NombreCompleto: string
o Direccion: string
o Telefono: string con formato: 999-999-9999
Sobre la carpeta Models, presionar clic derecho, seleccionar Agregar, y elegir Clase.
La clase que se creara se llamara “AlumnosModel.cs”
Esta clase se muestra a continuación:
Este modelo servirá como para crear la base de datos a trabajar.
Cabe mencionar que cada atributo (Excepto Id) cuenta con anotaciones las cuales servirán para validar su formato y
composición.
El atributo id es necesario ya que se usará como llave primaria de forma automática.
public int ID { get; set; }
[Display(Name = "Numero de Control")]
[Required(ErrorMessage = "NC Obligatorio")]
[StringLength(8, MinimumLength = 8, ErrorMessage = "NC Incorrecto")]
[DisplayFormat(DataFormatString = "{0:D8}", ApplyFormatInEditMode = true)]
[RegularExpression(@"^([0-9]{8})$", ErrorMessage = "NC Incorrecto")]
public string NC { get; set; }
[Required(ErrorMessage = "Nombre Obligatorio")]
[Display(Name = "Nombre Completo")]
[StringLength(150, ErrorMessage = "Nombre Incorrecto")]
public string Nombre { get; set; }
[Required(ErrorMessage = "Dirección Obligatoria")]
[Display(Name = "Dirección")]
[StringLength(150, ErrorMessage = "Direccion Incorrecta")]
public string Direccion { get; set; }
[Required(ErrorMessage = "Telefono Obligatorio")]
[StringLength(12, MinimumLength = 8, ErrorMessage = "Telefono Incorrecto")]
[Display(Name = "Telefono")]
[DisplayFormat(DataFormatString = "{0:D3-D3-D4}", ApplyFormatInEditMode = true)]
[RegularExpression(@"^\d{3}-\d{3}-\d{4}", ErrorMessage = "Telefono Incorrecto")]
[DataType(DataType.PhoneNumber)]
public string Telefono { get; set; }
[Required(ErrorMessage = "Fecha de Nacimiento Obligatorio")]
[Display(Name = "Fecha de Nacimiento")]
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
public DateTime FechaNacimiento { get; set; }
[Required(ErrorMessage = "Deuda obligatoria Obligatorio")]
[Display(Name = "Deuda a la biblioteca")]
[DataType(DataType.Currency)]
[DisplayFormat(DataFormatString = "{0:C}", ApplyFormatInEditMode = true)]
[Column(TypeName = "money")]
public float DeudaBiblioteca { get; set; }
NOTA: Deben de compilar con 0 errores
Las aplicaciones .NET Core, como ya se mencionó anteriormente, no usan el framework .NET completo, solo módulos o
partes administradas por Nuget.
Para esta práctica se necesitan los siguientes módulos:
Microsoft.EntityFrameworkCore
Microsoft.EntityFrameworkCore.Designer
Microsoft.EntityFrameworkCore.SqlServer
Microsoft.EntityFrameworkCore.Tools
Para ello, en el menú Herramientas, se debe acceder a la opción Administrador de paquetes NuGet, y en el menú que
se desplegara, elegir: Administrar paquetes NuGet para la solución.
Escriban los paquetes (se listan arriba) a descargar, en la imagen se muestran los 3, deben instalar uno a la vez, en el
recuadro de la derecha por cada paquete marquen el proyecto y procedan con el botón Instalar. Miren la nota en la
siguiente página.
En cada paquete les pedirá aceptar la licencia de módulos.
Microsoft.EntityFrameworkCore Microsoft.EntityFrameworkCore.SqlServer
Microsoft.EntityFrameworkCore.Tools
Comprobación: en la pestaña “Instalado”, deben aparecer las 3 librerías
Despues de lo que omiti porque es automatico, deben de compilar y:
En ella debemos ejecutar los comandos:
add-migration MigracionInicial
update-database