Curso en línea
Programando Aplicaciones Web en Blazor
Crea aplicaciones web interactivas con C#
Impartido por Felipe Gavilán
Detalles del curso
Información principal del curso
- Nivel
- Principiante
- Duración aproximada
- 14 h 7 min
- Contenido
- 169 clases
- Actualizado
Herramientas que utilizarás
Tecnologías y versiones
- ASP.NET Core Versión 10
- Entity Framework Core Versión 10
Sobre este curso
Una ruta práctica y directa
Blazor es una tecnología de Microsoft que nos permite realizar aplicaciones web interactivas con C# sin necesidad de utilizar JavaScript. En este curso vamos a aprender a desarrollar aplicaciones web con Blazor. A lo largo del curso crearemos una aplicación aplicando lo aprendido. Iremos desde lo básico hasta lo avanzado. Crearemos formularios, componentes, inyección de dependencias y más. Utilizaremos una aplicación de ASP.NET Core para servir nuestro proyecto de Blazor, y con Entity Framework Core crearemos nuestra base de datos. Al final, utilizaremos servicios de Azure, como Azure App Service y Github Actions, para publicar nuestra aplicación en producción. Algunos de los temas que veremos: - Componentes y parámetros - RenderFragment, para pasar contenido como parámetro a un componente - Eventos, para ejecutar funciones en respuesta a las acciones de un usuario - Ciclo de vida de un componente - Uso de inyección de dependencias para reutilizar código de manera inteligente - Invocar métodos de JavaScript desde C# - Invocar métodos de C# desde JavaScript - Aislamiento de CSS y JavaScript - Ruteo para tener varias páginas en nuestra aplicación - Creación de distintos tipos de formularios con controles personalizados y validaciones - Comunicación con un Web API - Uso de base de datos de SQL Server - Sistema de usuarios con roles
Contenido del curso
Currículo completo
12 secciones 169 clases
Sección 1 Introducción 9 clases
- Introducción Vista previa gratis
- ¿Qué es Blazor? Vista previa gratis
- Componentes Vista previa gratis
- Render Modes Vista previa gratis
- Hosting Models Contenido restringido
- Blazor Híbrido Contenido restringido
- ¿Dónde Podemos Utilizar Blazor Web? Contenido restringido
- Herramientas que usaremos en el curso Contenido restringido
- Resumen Contenido restringido
Sección 2 Render Modes 8 clases
- Introducción Contenido restringido
- Servidor Estático Contenido restringido
- StreamRendering Contenido restringido
- Servidor Interactivo Contenido restringido
- WebAssembly Interactivo Contenido restringido
- Interactivo Automático Contenido restringido
- RendererInfo Contenido restringido
- Resumen Contenido restringido
Sección 3 Introducción a Razor 6 clases
- Introducción Contenido restringido
- Introducción a Razor Contenido restringido
- Utilizando Clases Contenido restringido
- Bucles Contenido restringido
- Condicionales Contenido restringido
- Resumen Contenido restringido
Sección 4 Componentes 44 clases
- Introducción Contenido restringido
- Creando el Proyecto Contenido restringido
- Introducción a los Componentes Contenido restringido
- Creando Nuestro Primer Componente Contenido restringido
- Parámetros Contenido restringido
- Tomando Decisiones en Base al Valor de un Parámetro Contenido restringido
- Componente Cargando - Agregando Imágenes Contenido restringido
- Parámetros Requeridos Contenido restringido
- Componente Botón - Valor Por Defecto de un Parámetro Contenido restringido
- Atributos de Elementos HTML Condicionales Contenido restringido
- Delimitando los Posibles Valores de un Parámetro Contenido restringido
- Mapeo de Parámetros Contenido restringido
- Parámetros Arbitrarios Contenido restringido
- Eventos - OnClick Contenido restringido
- OnAfterRender y StateHasChanged Contenido restringido
- EventCallback Contenido restringido
- EventCallback con Parámetro Contenido restringido
- Atributo Key Contenido restringido
- Eventos - OnChange Contenido restringido
- Data Binding Básico Contenido restringido
- Bind Event - OnInput Contenido restringido
- Bind Get y Set Contenido restringido
- Bind After Contenido restringido
- RenderFragment Contenido restringido
- Pasando Varios RenderFragments Contenido restringido
- RenderFragment Genérico y Componentes Genéricos Contenido restringido
- Ciclo de Vida de un Componente Contenido restringido
- Ciclo de Vida de un Componente - Ejemplo Contenido restringido
- Inyección de Dependencias Contenido restringido
- Creando un Repositorio Contenido restringido
- Manipulando la Cabecera del Documento HTML Contenido restringido
- Clases Parciales - Separando Código de C# y UI Contenido restringido
- Layout Contenido restringido
- Agregando Interactividad al Layout Contenido restringido
- Invocar metodos de Javascript desde C# Contenido restringido
- Invocar métodos de C# desde Javascript - Método Estático Contenido restringido
- Invocar métodos de C# desde Javascript - Método de Instancia Contenido restringido
- Aislamiento de JavaScript Contenido restringido
- Aislamiento de CSS Contenido restringido
- Haciendo Referencia a Componentes Contenido restringido
- ErrorBoundary Contenido restringido
- Parametros de Cascada Contenido restringido
- Timers y Dispose Contenido restringido
- Resumen Contenido restringido
Sección 5 Ruteo 10 clases
- Introducción Contenido restringido
- Limpieza Contenido restringido
- Directiva page Contenido restringido
- Archivo Routes.razor Contenido restringido
- RenderMode Global Contenido restringido
- Creando Algunas de las Pantallas de Nuestra App Contenido restringido
- NavLinks Contenido restringido
- NavigationManager Contenido restringido
- Parámetros de Ruta Contenido restringido
- Resumen Contenido restringido
Sección 6 Formularios 19 clases
- Introducción Contenido restringido
- Creando Nuestro Primer Formulario Contenido restringido
- Aplicando Binding a Nuestro Componente Contenido restringido
- Validaciones con Atributos Contenido restringido
- Validación Personalizada Contenido restringido
- Deshabilitando el Botón si el Formulario No Está en Estado Válido Contenido restringido
- Deshabilitando el Posteo Consecutivo Contenido restringido
- Evitando Que el Usuario Salga del Formulario sin Guardar Cambios Contenido restringido
- Formulario de Actualización de Géneros Contenido restringido
- Formulario de Buscar Películas Contenido restringido
- Formulario de Actores Contenido restringido
- Componente de Insertar Imagen Contenido restringido
- Componente Formulario Entidad Contenido restringido
- Formulario de Películas Contenido restringido
- Componente de Selección Múltiple Contenido restringido
- Instalando MudBlazor Contenido restringido
- Componente AutoComplete - AutoComplete Básico Contenido restringido
- Componente AutoComplete - Arrastrando Elementos en una Lista Contenido restringido
- Resumen Contenido restringido
Sección 7 Bases de Datos - Entity Framework Core 25 clases
- Introducción Contenido restringido
- Instalando Entity Framework Core Contenido restringido
- Usando EF Core Desde un Componente Contenido restringido
- Usando EF Core Desde Un Servicio Contenido restringido
- Listado de Géneros Contenido restringido
- Implementando Paginación - Parte 1 Contenido restringido
- Implementando Paginación - Parte 2 Contenido restringido
- Actualizar Géneros Contenido restringido
- Borrar Géneros Contenido restringido
- Confirmando el Borrado Contenido restringido
- Creando Actores Contenido restringido
- Preparando el Proyecto para que Guarde Imágenes Contenido restringido
- Guardando una Imagen en Azure Storage Contenido restringido
- Guardando una Imagen Localmente Contenido restringido
- Índice y Borrado de Actores Contenido restringido
- Actualizando Actores Contenido restringido
- Botón Cancelar Contenido restringido
- Crear Películas Contenido restringido
- Filtrando Películas para el Home Contenido restringido
- Pantalla Detalle Película Contenido restringido
- Pantalla Filtro de Películas Contenido restringido
- Manipulando Query Strings Contenido restringido
- Actualizando Películas Contenido restringido
- Borrar Películas Contenido restringido
- Resumen Contenido restringido
Sección 8 Seguridad 21 clases
- Introducción Contenido restringido
- Autenticación y Autorización Contenido restringido
- Explorando la Plantilla de Cuentas Individuales Contenido restringido
- Implementando la Autenticación en Nuestra App Contenido restringido
- AuthenticationStateProvider Contenido restringido
- AuthorizeView - Ocultando Contenido Visual Según Estado de Autenticación Contenido restringido
- Protegiendo un Componente con el Atributo Authorize Contenido restringido
- Claims Contenido restringido
- Roles Contenido restringido
- Usando la Revalidación de Identidad y el Security Stamp Contenido restringido
- Validando Permisos al Momento de la Acción Contenido restringido
- Políticas Contenido restringido
- Políticas que Tocan la Base de Datos Contenido restringido
- Proveedor Externo para Autenticación - Microsoft Contenido restringido
- Enviando Emails Desde Nuestra Aplicación Contenido restringido
- Sistema de Votación Contenido restringido
- Componente de Votación Contenido restringido
- Dando Feedback al Usuario Contenido restringido
- Obteniendo los Votos de las Películas Contenido restringido
- Anti-Forgery Token Contenido restringido
- Resumen Contenido restringido
Sección 9 Despliegue 5 clases
- Introducción al Módulo Contenido restringido
- Publicando a un Azure App Service Contenido restringido
- Activando la Autenticación con Proveedor Externo Contenido restringido
- Desplegando con GitHub Actions Contenido restringido
- Resumen Contenido restringido
Sección 10 Blazor WebAssembly 9 clases
- Introducción al Módulo Contenido restringido
- Repaso de Blazor WebAssembly Contenido restringido
- Haciendo que Nuestro Proyecto Pueda Usar WebAssembly Contenido restringido
- Migrando el Componente Home Contenido restringido
- Dejando de Usar WebUtilities Contenido restringido
- Migrando Todo el Client Contenido restringido
- Implementando un Componente con InteractiveAuto Contenido restringido
- Implementando la Funcionalidad de Votación Contenido restringido
- Resumen Contenido restringido
Sección 11 Blazor Standalone 5 clases
- Introducción Contenido restringido
- Introducción a Blazor Standalone Contenido restringido
- Lazy Loading de Assemblies Contenido restringido
- Desplegando Contenido restringido
- Resumen Contenido restringido
Sección 12 Aplicaciones Web Progresivas 8 clases
- Introducción Contenido restringido
- Introducción a las Aplicaciones Web Progresivas Contenido restringido
- Creando una Aplicación de Blazor PWA Contenido restringido
- Instalando una Aplicación de Blazor Contenido restringido
- Modo Offline Contenido restringido
- Actualizando una PWA Contenido restringido
- Mecanismo Básico de Sincronización Contenido restringido
- Resumen Contenido restringido
Al finalizar, podrás…
Lo que aprenderás
- Desarrollar aplicaciones web con C# y Blazor
- Utilizar Azure DevOps para publicar aplicaciones de Blazor
- Crear bases de datos con Entity Framework Core
- Crear un sistema de usuarios que utilice roles
Aplica lo aprendido
Resultado práctico
Al finalizar este curso tendrás las herramientas para crear aplicaciones web modernas utilizando Blazor.
Antes de comenzar
Requisitos previos
- Fundamentos de C# (funciones, variables, bucles, lo básico)
- Fundamentos de HTML y CSS (no indispensable, pero ayuda)
¿Es para ti?
Este curso es para ti si…
- Desarrolladores de C# que quieran hacer aplicaciones web complejas
- Desarrolladores de JavaScript que ya no quieran usar JavaScript
- Desarrolladores Front-End
- Desarrolladores Back-End que quieran utilizar C# en el Front-End