
ASP.NET MVC 5 with Bootstrap and Knockout.js
Jamie Munro
- Editorial
- O'Reilly
- Año
- 2015
- Páginas
- ~278
- Nivel
- Intermedio
De qué trata
Libro de O'Reilly en el que Jamie Munro enseña a combinar tres tecnologías: ASP.NET MVC 5 en el servidor, Bootstrap 3 para la interfaz responsive y Knockout.js, una implementación en JavaScript del patrón Model-View-ViewModel, para la interactividad en el cliente. El objetivo son aplicaciones web dinámicas que se vean bien en cualquier tamaño de pantalla. Se dirige a desarrolladores de nivel intermedio que conocen C# y lo básico de HTML, CSS y JavaScript, y quieren organizar mejor sus aplicaciones en el ecosistema .NET con Visual Studio.
La primera parte presenta cada pieza por separado: la estructura de un proyecto MVC (controladores, vistas y URL), los menús, botones, alertas y temas de Bootstrap, los ViewModels y el data binding de Knockout, y el acceso a datos con Entity Framework en sus enfoques Code First y Database First. La segunda parte trabaja con datos: scaffolding de modelos, tablas con ordenación y paginación, formularios integrados con Knockout, borrado con ventanas modales, ViewModels del lado del servidor y la incorporación de Web API. La tercera parte se ocupa de la arquitectura del código: filtros globales (de autenticación, autorización, acción, resultado y excepción), validación y manejo de errores en Web API, mapeo automático de objetos, autenticación y autorización, enrutamiento por atributos y el principio «fat model, skinny controller», con servicios, repositorios, orquestaciones y unidad de trabajo.
La cuarta parte reúne todo en una aplicación de ejemplo: un carrito de compras de una librería. Es un recorrido muy completo de cómo encajan el servidor y el cliente en el stack de Microsoft de 2015, y su parte de arquitectura sigue siendo útil. Sin embargo, el libro se basa en el ASP.NET MVC 5 clásico de .NET Framework, no en ASP.NET Core. Además, Knockout.js ha caído en desuso frente a React, Angular o Vue, y Bootstrap 3 está superado. Conviene leerlo para entender el patrón MVVM y la separación de responsabilidades, o para mantener aplicaciones heredadas, más que para empezar un proyecto nuevo.
- ASP.NET MVC 5
- C#
- Bootstrap 3
- Knockout.js
- MVVM
- Entity Framework
- Web API
- Filtros globales
- Autenticación y autorización
- Attribute routing
- Arquitectura en capas
- Carrito de compras
¿Cómo enseña?
Teoría + práctica
- ✗ Sin ejercicios
- ✓ Incluye proyectos
Proyectos
Gestión de autores (CRUD)
Ejemplo que atraviesa la segunda parte: listado de autores con ordenación y paginación, formulario de alta y edición ligado con Knockout.js y borrado mediante una ventana modal de Bootstrap, que luego se migra a Web API y ViewModels del servidor.
Carrito de compras de una librería
Aplicación final con ASP.NET MVC 5, Entity Framework Code First, Bootstrap y Knockout.js: layout compartido con resumen del carrito y menú de categorías, portada con libros destacados, filtrado por categoría, ficha de libro con componentes y bindings personalizados, y alta, edición y borrado de artículos del carrito, con bundling y minificación de JavaScript.

