Curso en línea
Aprende ASP.NET Core MVC Haciendo Proyectos Desde Cero
¡ASP.NET Core, Dapper, SQL Server, Procedimientos Almacenados, Sistema de usuarios, y mucho más!
Impartido por Felipe Gavilán
Detalles del curso
Información principal del curso
- Nivel
- Principiante
- Duración aproximada
- 31 h 37 min
- Contenido
- 356 clases
- Actualizado
Herramientas que utilizarás
Tecnologías y versiones
- ASP.NET Core Versión 9
Sobre este curso
Una ruta práctica y directa
Vamos a aprender a desarrollar aplicaciones web con ASP.NET Core MVC creando múltiples proyectos. Este es un curso ideal para aquellas personas que deseen aprender ASP.NET Core MVC desde cero. No necesitas tener conocimientos previos de ASP.NET Core MVC para tomar este curso. Mediante la creación de proyectos vas a poder ver las distintas etapas del ciclo de vida del desarrollo de aplicaciones web. Además, el tener un proyecto nos reta a tener que hacer aplicaciones verdaderamente útiles, que resuelvan algún problema para nuestros usuarios. Y claro, estos proyectos que hagamos los podrás mostrar en tu portafolio personal, lo cual te puede servir para mostrarlo a futuros empleadores. Proyecto 1 - Portafolio El primer proyecto que haremos es un portafolio de aplicaciones o landing page. La idea de este es que podamos ver lo básico de ASP.NET Core MVC mientras construimos un proyecto sencillo. Este proyecto es un portafolio, en el cual podremos colocar nuestros datos como desarrolladores, también, colocaremos los proyectos que hemos hecho en el pasado para que potenciales empleadores o clientes vean de lo que somos capaces. En este proyecto veremos: - Cómo crear la aplicación - Los conceptos de modelo, vista y controlador - Ruteo - Cómo colocar una imagen en una vista - Hablaremos de tag helpers y archivos de CSS - Veremos cómo recibir datos del controlador a la vista - Cómo enviar datos de la vista al controlador - Aprenderemos lo básico de Razor - Usaremos el IConfiguration para extraer datos del proveedor de configuración appsettings.json - Inyección de dependencia y ciclo de vida de los servicios - Cómo hacer un simple formulario - Enviar un email desde nuestra app Proyecto 2 - Manejo de Presupuestos El segundo proyecto es una aplicación de manejo de presupuestos, donde nuestros usuarios van a poder ingresar sus movimientos financieros, para así saber en qué gastan su dinero. En este proyecto veremos: - Cómo crear una base de datos de SQL Server - Cómo conectarnos con dicha base de datos desde la app de MVC - Cómo ejecutar queries y procedimientos almacenados desde MVC - Creación de distintos formularios con distintos tipos de controles: texto, select (dropdown), checkbox, selector de fechas, etc. - Haremos un CRUD de distintas entidades de nuestra app - Utilizaremos el principio de inversión de dependencias para mantener una alta flexibilidad y mantenibilidad de nuestro software - Veremos el aislamiento de CSS - Haremos un calendario donde el usuario podrá visualizar en un vistazo las transacciones del mes distribuidas en dicho calendario - Permitiremos al usuario exportar a Excel sus transacciones - Construiremos un sistema de usuarios utilizando nuestra propia tabla de usuarios. Proyecto 3 - Aplicación de Tareas En el tercer proyecto haremos una aplicación que permitirá a los usuarios llevar un listado de tareas. Esto así para que puedan documentar sus quehaceres. En este proyecto veremos: - Crear formularios dentro de una ventana modal - Uso de Entity Framework Core para crear una base de datos e interactuar con esta - Permitir a los usuarios subir archivos a la aplicación - Desarrollar una aplicación que se muestre en varios idiomas - Utilizar JavaScript para hacer nuestra aplicación interactiva - Realizar peticiones HTTP desde código de JavaScript y que nuestro back-end funcione como un Web API - Utilizar librerías de terceros como SweetAlert2 para mostrar modals modernos - Manejo de Callbacks en JavaScript Proyecto 4 - Blog con Inteligencia Artificial En el cuarto proyecto haremos un blog que usará inteligencia artificial para asistir en el uso de la aplicación. En este proyecto veremos: - Creamos una aplicación de Blog - Los usuarios pueden crear, editar y borrar entradas - Se conecta a una base de datos de SQL Server usando Entity Framework Core
Contenido del curso
Currículo completo
19 secciones 356 clases
Sección 1 Introducción 13 clases
- Introducción Vista previa gratis
- ¿Qué es .NET? Vista previa gratis
- ¿Qué es C#? Vista previa gratis
- ¿Qué es ASP.NET Core? Vista previa gratis
- Tipos de Aplicaciones con ASP.NET Core Vista previa gratis
- Visual Studio y Visual Studio Code Vista previa gratis
- Instalando Visual Studio Vista previa gratis
- Instalando Visual Studio Code Vista previa gratis
- Instalando .NET 9 Vista previa gratis
- Instalando SQL Server Vista previa gratis
- Creando un Proyecto con Visual Studio Vista previa gratis
- Creando el Proyecto con Visual Studio Code Vista previa gratis
- Resumen Vista previa gratis
Sección 2 Introducción a Bootstrap 21 clases
- Introducción Contenido restringido
- ¿Qué es Bootstrap? Contenido restringido
- Contenedores Contenido restringido
- Sistema Grid Contenido restringido
- Columnas Contenido restringido
- Gutters - Espacio Entre Columnas Contenido restringido
- Manejando Imágenes Contenido restringido
- Colores Contenido restringido
- Tablas Contenido restringido
- Manteniendo el Ratio de un Video Contenido restringido
- Tamaños Contenido restringido
- Espacios Contenido restringido
- Utilidades de Texto Contenido restringido
- Formularios Contenido restringido
- Acordeón Contenido restringido
- Alertas Contenido restringido
- Carousel Contenido restringido
- Ventanas Modales Contenido restringido
- Tabs Contenido restringido
- Menú Lateral con OffCanvas Contenido restringido
- Mostrando Toasts Contenido restringido
Sección 3 Proyecto 1 - Portafolio 32 clases
- Introducción Contenido restringido
- Lo que haremos Contenido restringido
- Creando el Proyecto Contenido restringido
- Explorando la Arquitectura del Proyecto Contenido restringido
- Controladores Contenido restringido
- Vistas Contenido restringido
- Layout Contenido restringido
- Introducción al Ruteo Contenido restringido
- Colocando una Imagen en una Vista Contenido restringido
- CSS, Cache y Tag Helpers Contenido restringido
- ViewBag - Pasando Datos del Controlador a la Vista Contenido restringido
- Modelos Fuertemente Tipados Contenido restringido
- Recibiendo Dos Datos del Controlador Contenido restringido
- Explorando Razor Contenido restringido
- Agregando Nuestra Descripción Contenido restringido
- Agregando Nuestras Habilidades Contenido restringido
- Instalando Íconos de Bootstrap Contenido restringido
- Vistas Parciales Contenido restringido
- Listado de Proyectos Contenido restringido
- Pasando Datos a una Vista Parcial Contenido restringido
- Principio de Responsabilidad Única Contenido restringido
- Inyección de Dependencias Contenido restringido
- Inyección de Dependencias con Interfaces Contenido restringido
- Servicios Contenido restringido
- ILogger Contenido restringido
- Proveedores de Configuración Contenido restringido
- Creando una Nueva Vista - Mostrando Todos los Proyectos Contenido restringido
- Creando un Simple Formulario Contenido restringido
- HTTP POST - Posteando el Formulario Contenido restringido
- Patrón POST-Redirección-GET Contenido restringido
- Enviando Emails desde la App Contenido restringido
- Resumen Contenido restringido
Sección 4 Proyecto 2 - Manejo de Presupuestos - Base de Datos 31 clases
- Introducción Contenido restringido
- Lo Que Haremos Contenido restringido
- Creando la App Contenido restringido
- ¿Qué es una Base de Datos? Contenido restringido
- Creando una Base de Datos Contenido restringido
- Creando la Tabla de Transacciones Contenido restringido
- Insertando Datos Manualmente Contenido restringido
- Insertando Datos con Código Contenido restringido
- Haciendo un SELECT Contenido restringido
- Ordenando con ORDER BY Contenido restringido
- Filtrando con un WHERE Contenido restringido
- Actualizando con Código Contenido restringido
- Borrando con Código Contenido restringido
- Operador IN Contenido restringido
- Operador LIKE Contenido restringido
- Combinando Operadores Lógicos Contenido restringido
- Filtrando por Fechas Contenido restringido
- Operador BETWEEN Contenido restringido
- Operador TOP Contenido restringido
- Utilizando GROUP BY y Suma Contenido restringido
- Conteo y Promedio Contenido restringido
- Tabla Tipo Operación - Llaves Foráneas Contenido restringido
- Realizando un INNER JOIN Contenido restringido
- Procedimientos Almacenados Contenido restringido
- Procedimientos Almacenados con Parámetros Contenido restringido
- Tablas Cuentas y Tipos Cuentas Contenido restringido
- Tabla Usuarios Contenido restringido
- Tabla Categorías Contenido restringido
- Visualizando Nuestra Base de Datos Contenido restringido
- Borrar Procedimiento Almacenado Contenido restringido
- Resumen Contenido restringido
Sección 5 Proyecto 2 - Manejo de Presupuestos - CRUD con Dapper 25 clases
- Introducción Contenido restringido
- Formulario Tipo Cuentas Contenido restringido
- Validando el Formulario Contenido restringido
- Visualizando los Errores de Validación Contenido restringido
- Tag Helpers para los Campos Contenido restringido
- Otras Validaciones por Defecto Contenido restringido
- Front-End y Back-End Contenido restringido
- Validación en el Front-End Contenido restringido
- Validaciones Personalizadas por Atributo Contenido restringido
- Validaciones Personalizadas por Modelo Contenido restringido
- Comunicándonos con la Base de Datos - Connection Strings Contenido restringido
- Insertando un Tipo de Cuenta en la Base de Datos Contenido restringido
- Programación Asíncrona Contenido restringido
- Aplicando la Programación Asíncrona Contenido restringido
- Validaciones Personalizadas a Nivel del Controlador Contenido restringido
- Validaciones Personalizadas con JavaScript Utilizando Remote Contenido restringido
- Listado Tipos Cuentas Contenido restringido
- Evitando Repetir Código Contenido restringido
- Actualizando Tipos Cuentas Contenido restringido
- Borrando Tipos Cuentas Contenido restringido
- Arrastrando Filas de una Tabla Contenido restringido
- Haciendo un post con el FETCH API Contenido restringido
- Aplicando Multiples Queries a la Base de Datos Contenido restringido
- Generando el Orden Correcto al Insertar - Procedimiento Almacenado con Dapper Contenido restringido
- Resumen Contenido restringido
Sección 6 Proyecto 2 - Manejo de Presupuestos - Los Otros CRUDs 24 clases
- Introducción Contenido restringido
- Formulario de Cuentas Contenido restringido
- Insertar Cuenta Contenido restringido
- Indice de Cuentas - Query Contenido restringido
- Indice de Cuentas - Vista Contenido restringido
- Aislamiento de CSS Contenido restringido
- Editando Cuentas - Agregando Íconos a la Aplicación Contenido restringido
- Utilizando AutoMapper Contenido restringido
- Borrando Cuentas Contenido restringido
- Creando Categorías Contenido restringido
- Formulario Categorías - Creando un Select de un Enum Contenido restringido
- Índice de Categorías Contenido restringido
- Editar Categorías Contenido restringido
- Borrar Categorías Contenido restringido
- Creando Transacciones Contenido restringido
- Trabajando con Fechas en un Formulario Contenido restringido
- Agregando Los Demás Campos Contenido restringido
- DropDown Cascada Contenido restringido
- Insertando la Transacción Contenido restringido
- Actualizando Transacciones - Parte 1 Contenido restringido
- Actualizando Transacciones - Parte 2 Contenido restringido
- Vista de Actualización de Transacciones Contenido restringido
- Borrar Transacciones - Un Formulario Con Dos Acciones Contenido restringido
- Resumen Contenido restringido
Sección 7 Proyecto 2 - Manejo de Presupuestos - Reportes 21 clases
- Introducción Contenido restringido
- Movimientos de Cuentas Contenido restringido
- Vista de Movimientos de Cuentas Contenido restringido
- Devolviendo al Usuario al Lugar Donde se Encontraba Contenido restringido
- Reporte Diario - Query Contenido restringido
- Vista del Reporte Diario Contenido restringido
- Refactorizando Contenido restringido
- Creando un Submenú Contenido restringido
- Reporte Semanal - Query - Group By con DateDiff Contenido restringido
- Reporte Semanal - Algoritmo Contenido restringido
- Reporte Semanal - Vista Contenido restringido
- Reporte Mensual - Query Contenido restringido
- Reporte Mensual - Vista Contenido restringido
- Exportar a Excel - Por Mes Contenido restringido
- Exportar a Excel - Por Año Contenido restringido
- Instalando el Calendario FullCalendar Contenido restringido
- Agregando Transacciones Manualmente al Calendario Contenido restringido
- Mostrando las Transacciones de la Base de Datos en el Calendario Contenido restringido
- Evento Click en el Calendario Contenido restringido
- Mostrando un Modal con las Transacciones del Día Contenido restringido
- Resumen Contenido restringido
Sección 8 Proyecto 2 - Manejo de Presupuestos - Sistema de Usuarios 14 clases
- Introducción Contenido restringido
- Autenticación y Autorización Contenido restringido
- Formulario de Registro Contenido restringido
- Configurando el Sistema de Usuarios Contenido restringido
- Creando un Usuario Contenido restringido
- Mensajes de Error de Identity en Español Contenido restringido
- Asignando una Cookie al Registrar al Usuario Contenido restringido
- Implementando el Logout Contenido restringido
- Implementando el Login Contenido restringido
- Obteniendo el Id del Usuario Contenido restringido
- Atributo Authorize Contenido restringido
- Data por Defecto Contenido restringido
- Dos Layouts Contenido restringido
- Resumen Contenido restringido
Sección 9 Proyecto 2 - Manejo de Presupuestos - Suplementario 12 clases
- Introducción Contenido restringido
- Paginación - Back-End - Query Contenido restringido
- Paginación - Contando los Registros Contenido restringido
- Paginación - Control de Paginación - Operador Ternario en Razor Contenido restringido
- Paginación - Botones de Anterior y Siguiente Contenido restringido
- Paginación - Cambiar Cantidad Registros a Mostrar Contenido restringido
- Paginación - Usando el IUrlHelper Contenido restringido
- Valor por Defecto de Un DropDownList Contenido restringido
- Campos Adicionales en Remote Contenido restringido
- ¿Olvidó su Contraseña? - Enviando Emails Contenido restringido
- ¿Olvidó su Contraseña? - Generando el Código Secreto Contenido restringido
- ¿Olvidó su Contraseña? - Permitiendo el Cambio de Contraseña Contenido restringido
Sección 10 Proyecto 3 - Manejo de Tareas - Entity Framework Core 14 clases
- Introducción Contenido restringido
- ¿Qué es Entity Framework Core? Contenido restringido
- Versiones de Entity Framework Core Contenido restringido
- Código Primero vs Base de Datos Primero Contenido restringido
- Dapper vs Entity Framework Core Contenido restringido
- Instalando el EF Core CLI Contenido restringido
- Creando el Proyecto Contenido restringido
- Instalando Entity Framework Core en MVC Contenido restringido
- Creando Nuestra Primera Entidad Contenido restringido
- Creando una Migración Contenido restringido
- Configurando Columnas Contenido restringido
- Relación Uno a Muchos Contenido restringido
- Entidad Archivos Adjuntos Contenido restringido
- Resumen Contenido restringido
Sección 11 Proyecto 3 - Manejo de Tareas - Seguridad 14 clases
- Introducción Contenido restringido
- Configurando Identity con EF Core Contenido restringido
- Registro de Usuarios Contenido restringido
- Login Contenido restringido
- Login Externo - OAuth2 Contenido restringido
- Acción para Trabajar con Login Externo Contenido restringido
- Login Externo - Microsoft Contenido restringido
- Roles Contenido restringido
- Listado de Usuarios Contenido restringido
- Asignando un Usuario a un Rol Contenido restringido
- OcultandoUI Según el Rol del Usuario Contenido restringido
- Protegiendo una Acción para un Rol Contenido restringido
- Relacionando Tareas con la Tabla de Usuarios Contenido restringido
- Resumen Contenido restringido
Sección 12 Proyecto 3 - Manejo de Tareas - App Multi-Idiomas 12 clases
- Introducción Contenido restringido
- Internacionalización Contenido restringido
- Idioma por Defecto - IStringLocalizer Contenido restringido
- Soportando Distintas Culturas Contenido restringido
- Archivos de Recursos Contenido restringido
- Proveedores de Localización Contenido restringido
- Traduciendo Strings en Vistas Contenido restringido
- Actualizando un String de Recurso Contenido restringido
- Anotaciones de Datos - Traduciendo Mensajes de Error Contenido restringido
- Traducir Contenido de Archivos de JavaScript Contenido restringido
- Seleccionar el Idioma Manualmente Contenido restringido
- Resumen Contenido restringido
Sección 13 Proyecto 3 - Manejo de Tareas - Entidad Tareas 21 clases
- Introducción Contenido restringido
- Limpieza Contenido restringido
- Instalando Knockout Contenido restringido
- Listado de Tareas Contenido restringido
- Mostrando Contenido de una Manera Dinámica Contenido restringido
- Función Calculada Contenido restringido
- Agregando una Nueva Tarea en Memoria Contenido restringido
- Creando un Controlador al Estilo Web API Contenido restringido
- Agregando una Nueva Tarea a la Base de Datos Contenido restringido
- Leyendo la Tabla de Tareas Contenido restringido
- Realizando Filtros con Where Contenido restringido
- Ordenando Resultados con OrderBy Contenido restringido
- Seleccionando Columnas con Select Contenido restringido
- Automatizando el Mapeo con AutoMapper Contenido restringido
- Mostrando Errores con SweetAlert2 Contenido restringido
- Ordenando las Tareas Contenido restringido
- Obteniendo una Tarea por su Id Contenido restringido
- Mostrando un Modal con el Detalle de la Tarea Contenido restringido
- Editando una Tarea Contenido restringido
- Borrando una Tarea - Callbacks Contenido restringido
- Resumen Contenido restringido
Sección 14 Proyecto 3 - Manejo de Tareas - Entidad Pasos 14 clases
- Introducción Contenido restringido
- UI Para Insertar un Paso Contenido restringido
- Insertando un Paso en la Base de Datos Contenido restringido
- Enviando el Paso al Back-End Contenido restringido
- Resolviendo el Error de Object Cycles Contenido restringido
- Listado de Pasos - Cargando Data Relacionada Contenido restringido
- Modificando Estilos de CSS Dinámicamente Contenido restringido
- Actualizando Pasos Contenido restringido
- Actualizar Paso al Marcar Como Realizado Contenido restringido
- Borrando Pasos Contenido restringido
- Obteniendo Datos de Conteos con EF Core Contenido restringido
- Colocando Pasos en el Listado de Tareas Contenido restringido
- Reordenar Pasos Contenido restringido
- Resumen Contenido restringido
Sección 15 Proyecto 3 - Manejo de Tareas - Entidad Archivos Adjuntos 12 clases
- Introducción Contenido restringido
- UI Para Insertar un Archivo Contenido restringido
- Insertando un Archivo en la Base de Datos Contenido restringido
- Almacenando Archivos en la Nube (Azure) Contenido restringido
- Almacenando Archivos Localmente Contenido restringido
- Enviando el Archivo al Back-End con JavaScript Contenido restringido
- Listando los Archivos Contenido restringido
- Actualizando un Archivo Contenido restringido
- Borrando un Archivo Contenido restringido
- Descargando un Archivo Contenido restringido
- Reordenando los Archivos Contenido restringido
- Resumen Contenido restringido
Sección 16 Proyecto 4 - Blog con Inteligencia Artificial - Haciendo el Blog 37 clases
- Introducción Contenido restringido
- Lo que haremos Contenido restringido
- Creando el Proyecto Contenido restringido
- Montando el Sistema de Usuarios Contenido restringido
- Login y Registro Contenido restringido
- Creando las Entidades Entrada y Comentario Contenido restringido
- Permitiendo Almacenar Archivos Contenido restringido
- Servicio de Usuarios Contenido restringido
- Roles - Data Seeding Contenido restringido
- Listado Usuarios Contenido restringido
- Asignando Varios Roles Contenido restringido
- Creando Entradas Contenido restringido
- Texto Enriquecido - Instalando Quill Contenido restringido
- Formulario de Creación de Entradas Contenido restringido
- Visualizando la Imagen Seleccionada Contenido restringido
- Pantalla Detalle Entrada Contenido restringido
- Código Enriquecido Contenido restringido
- Mostrar Botón Editar Entradas Contenido restringido
- Editar Entradas - Acciones Contenido restringido
- Editar Entradas - Formulario Contenido restringido
- Borrar Entradas Contenido restringido
- Ocultar el Detalle de una Entrada Borrada Contenido restringido
- Creando Comentarios Contenido restringido
- Mostrando Los Comentarios Contenido restringido
- Borrando Comentarios Contenido restringido
- Filtros de Query Contenido restringido
- Ignorando los Filtros de Query Contenido restringido
- Blazor Contenido restringido
- Integrando Blazor Contenido restringido
- Creando un Componente de Prueba Contenido restringido
- Cargando las Entradas Contenido restringido
- Insertando Data de Prueba Contenido restringido
- Ejecutando una Función Al Llegar al Final de la Pantalla Contenido restringido
- Implementando el Scrolling Infinito Contenido restringido
- Colocando un Loading Gif Contenido restringido
- Anchura Dinámica del Texto del div Contenido restringido
- Resumen Contenido restringido
Sección 17 Proyecto 4 - Blog con Inteligencia Artificial - Introducción a la IA 10 clases
- Introducción Contenido restringido
- ¿Por Qué Existe la Inteligencia Artificial (IA)? Contenido restringido
- ¿Qué es la IA? Contenido restringido
- Tipos de IA Contenido restringido
- ¿Cómo Podemos Usar la IA en la Ingeniería de Software? Contenido restringido
- APIs de IA vs Modelos Personalizados Contenido restringido
- Introducción a OpenAI y su API Contenido restringido
- Creación de una cuenta en OpenAI Contenido restringido
- Precios Contenido restringido
- Resumen Contenido restringido
Sección 18 Proyecto 4 - Blog con Inteligencia Artificial - Integrando la IA 17 clases
- Introducción Contenido restringido
- Guardando la Llave en un Lugar Seguro Contenido restringido
- Preparándonos Para Generar Texto con la IA Contenido restringido
- Instalando y Configurando la Librería de OpenAI Contenido restringido
- Utilizando la IA para generar una entrada del blog Contenido restringido
- Generando contenido usando streaming Contenido restringido
- Preparándonos para generar imágenes con la IA - Parte 1 Contenido restringido
- Preparándonos para generar imágenes con la IA - Parte 2 Contenido restringido
- Generando imágenes en el formulario de edición Contenido restringido
- Generando la portada de las entradas del blog con IA Contenido restringido
- ¿Cómo haremos el análisis de sentimientos? Contenido restringido
- Creando una tarea que se ejecuta de manera recurrente Contenido restringido
- Preparándonos para analizar comentarios Contenido restringido
- Enviando un lote de comentarios usando el Batch API Contenido restringido
- Verificando los lotes de OpenAI Contenido restringido
- Haciendo un reporte con las entradas con más comentarios negativos Contenido restringido
- Resumen Contenido restringido
Sección 19 Despliegues 12 clases
- Introducción Contenido restringido
- Desplegando el Proyecto 1 en un Azure App Service Contenido restringido
- Desplegando el Proyecto 1 en IIS Contenido restringido
- Integración Continua y Entrega Continua Contenido restringido
- Desplegando el Proyecto 1 con Azure DevOps Contenido restringido
- Desplegando el Proyecto 2 en un Azure App Service Contenido restringido
- Desplegando el Proyecto 2 en IIS Contenido restringido
- Desplegando el Proyecto 2 con Azure DevOps - Parte 1 Contenido restringido
- Desplegando el Proyecto 2 con Azure DevOps - Parte 2 Contenido restringido
- Desplegando el Proyecto 3 en un Azure App Service Contenido restringido
- Utilizando Kudu para Investigar Errores en Producción Contenido restringido
- Desplegando el Proyecto 4 en un Azure App Service Contenido restringido
Al finalizar, podrás…
Lo que aprenderás
- Entender el patrón de desarrollo web MVC
- Desarrollar varios proyectos web con MVC
- Comunicarte con una base de datos de SQL Server usando Dapper
- Publicar aplicaciones de MVC en Azure y IIS
Aplica lo aprendido
Resultado práctico
Al finalizar este curso tendrás un portafolio de varios proyectos de ASP.NET Core MVC.
Antes de comenzar
Requisitos previos
- El estudiante debe tener nociones de C#, HTML y CSS (no tiene que ser un experto, ya que en el curso iremos paso a paso)
¿Es para ti?
Este curso es para ti si…
- Principiantes que quieran armar un portafolio de proyectos de MVC para mostrarlo a futuros empleadores
- Principiantes que quieran aprender a desarrollar aplicaciones web de MVC que se conecten con una base de datos