El caso es que el gran Simone Chiaretta ha publicado un excelente diagrama con el ciclo de vida de una petición en el framework ASP.NET MVC. Simplemente imprescindible para comprender lo que pasa por ahí dentro desde que se recibe una petición en el servidor hasta que es enviada la vista con la respuesta al cliente.
Puedes pulsar sobre la imagen para descargar la versión PDF, lista para ser impresa :-)
Publicado en: Variable not found.
Publicado por José M. Aguilar a las 10:08 a. m.
Etiquetas: aspnetmvc, chuletas, desarrollo
Lo primero, agradeceros la asistencia y reconocer el mérito de los jabatos que aguantaron hasta el final. No es fácil tragarse dos horas seguidas de monólogo y menos aún sobre una temática algo densa en algunos puntos. Muchas gracias a todos :-)
Durante estas dos horas recorrimos distintas técnicas que podemos utilizar para validar las entradas de datos. En resumidas cuentas, lo que vimos fue:
- La evolución que nos lleva desde una validación totalmente artesana, sin el más absoluto respeto al patrón MVC hasta el sistema de validación integrado en ASP.NET MVC.
- Las anotaciones “estándar”: Required, Range, StringLength… comentando también algunas de las novedades que nos depara el futuro ASP.NET vNext.
- Los modos de validación en cliente de MVC 3, la validación unobtrusive y su repercusión en la vista.
- La validación personalizada con CustomValidation.
- Validación remota con el atributo Remote.
- También vimos el atributo AllowHtml, que aunque no tenía mucho que ver con el resto, me parecía interesante comentarlo.
- El uso de los interfaces IDataErrorInfo e IValidatableObject para realizar validaciones personalizadas en servidor.
- Creación de custom annotations, o anotaciones personalizadas en las que introducir la lógica de validación que nos interese.
- Cómo llevar a la vista estas anotaciones personalizadas, generando las reglas y construyendo los adaptadores y funciones de validación en cliente.
- Y por último, creamos un validator provider capaz de obtener validadores a partir de información almacenada en el archivo de configuración, en lugar de obtenerlos desde las anotaciones en las clases del Modelo.
Enlaces:
- Materiales (PPT y proyecto Visual Studio 2010)
- Grabación del evento (descarga o visualización online)
Ahí van los enlaces publicados en Variable not found en Facebook y Twitter del 19 al 25 de septiembre de 2011. Espero que os resulten interesantes. :-)
- Optimizing the website Performance using ASP.NET 4.5
Kalyan Bandarupalli - Premature optimization
Keyvan Nayyeri - HTML5 compatibility on mobile and tablet browsers
Vía Genbetadev. - EF vNext- Migrations 0.7.0.0
Unai Zorrilla - The Secret Life of JavaScript Primitives
Angus Croll. Vía CampusMVP. - Writing a Recipe for ASP.NET MVC 4 Developer Preview
Phil Haack - Regex engine updated to allow timeouts in .NET 4.5
Ahmad Mageed - 2D transforms in CSS 3
John. A secas. - Functions in javascript
Ricky Delaney - WebMatrix 2 Beta–Released
Roberto Lucero - Released: Project Silk Client-Side Web Development for Modern Browsers
Karl Shifflett - What’s new in C# 5.0 and VB.Net
Samuel Jack - Improvements in the CLR Core in .NET Framework 4.5
Sasha Goldshtein - Introduction to Entity Framework Code First
Bipin Joshi - Espectacular (Chrome): Very cool 3D WebGL Water demo. Like can 'touch' water to create waves! :)
Vía Brian Henderson - C#5 Tomando una cerveza con Feynman (o await 2a parte)
Eduard Tomás - The scoped attribute in HTML5
Html5 doctor - What’s New For Parallelism in .NET 4.5
Stephen Toub - C# Future directions
Christian Nagel - C#/.NET Little Wonders: The String Remove() and Replace() Methods
James Michael - WinRT demystified
Miguel de Icaza - C# 5: Async / Await
Eduard Tomás - ASP.NET MVC 4: Display modes
Gunnar Peipman - ASP.NET MVC 4: New mobile web application template
Gunnar Peipman
Publicado en: Variable not found
El tema, que ha sido propuesto por algunos de vosotros, es sin duda muy interesante. Sea cual sea el tipo de aplicación que desarrollemos, nos vemos obligados a validar los datos de entrada y, afortunadamente, MVC 3 viene acompañado de un sistema realmente potente para ayudarnos con esta crítica tarea. De hecho, es tan amplio que no es fácil conocerlo en toda su extensión.
Y lo que voy a intentar en esta charla es dar un repaso al sistema de validación de MVC 3 completo. De esta forma podréis conocer qué es lo que hay, lo que se puede hacer, y tener una idea de cómo hacerlo. Trataremos desde aspectos muy simples como las anotaciones incluidas en el framework, su personalización y extensión, hasta temas algo más avanzadillos como la creación de validadores en cliente o los proveedores de validación. Espero que me dé tiempo a todo, uuf!
Para poder seguirla creo que es conveniente (por no decir necesario) conocer ASP.NET MVC 3 (o 2) al menos a un nivel básico; no voy a tener tiempo para detenerme en ver qué es un controlador, cómo le llegan los parámetros a la acciones, o cómo se construye un formulario. Pero tampoco es que sean unos requisitos muy exigentes: cualquiera que haya jugado mínimamente con el framework creo que podrá entenderlo todo… o al menos ese es el objetivo.
Os recuerdo que se trata de un Webcast, o sea, que podéis asistir a este evento desde vuestro sillón favorito y con un saco de palomitas a la vera, y por supuesto es totalmente gratuito. Eso sí, debéis registraros previamente para poder asistir:
- Día: martes 27 de septiembre, 19:00 hora peninsular española (GMT+1)
- URL del registro: https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032494252&Culture=es-ES
Publicado por José M. Aguilar a las 12:16 p. m.
Etiquetas: aspnetmvc, auges, charlas, eventos, validadores
Pero bueno, centrándonos en ASP.NET MVC 4, se trata de un adelanto de lo que ya se nos avanzó en el Roadmap del producto, y que se ha distribuido en dos paquetes distintos: uno para Visual Studio 2010, y otro para el flamante Visual Studio 11 Developer Preview, también lanzado durante el Build. Ambos pueden descargarse a través de Web Platform Installer, o desde los enlaces proporcionados en esta página.
Este post vamos a dedicarlo a comentar algunas de las cosas que me han ido llamando la atención durante los primeros paseos por el producto. Y ojo, que se trata de una versión muy preliminar: puede tener fallos, cambiar conforme vayamos aproximándonos a la versión final, o incluso hay características que podrían desaparecer.
Por ejemplo, en el caso de la distribución para Visual Studio 2010, no debería interferir con otras versiones del producto instaladas, por lo que deberíais poder probarla en vuestra máquina habitual sin miedo a que os rompa nada. Sin embargo, sí que me ha dado algún problemilla al compilar proyectos MVC 3 existentes, puesto que se introducían dependencias a la versión 2 de
System.Web.Webpages
(distribuida con MVC 4), pero vaya, nada que no pueda solucionarse en un par de minutos retocando las referencias del proyecto.Publicado por José M. Aguilar a las 10:17 a. m.
Etiquetas: asp.net, aspnetmvc, desarrollo, novedades
Espero que te resulten interesantes. :-)
- New Features for Web Development in Visual Studio 11 Developer Preview
Microsoft Web development tools - Tutorial: build a Mobile Website with ASP.NET MVC 4 and jQuery Mobile.
Vía Scott Hanselman - Get the scoop on the ASP.NET 4.5, ASP.NET MVC 4, ASP.NET Web Pages 2, and Visual Studio 11 Developer Previews
Jon Galloway - ASP.NET MVC 4 Developer Preview Released
Phil Haack - Probando jQuery en el escritorio de Windows 8
Gonzalo Pérez - Javascript no es tu enemigo: Patterns For Large-Scale JavaScript Application Architecture
Addi Osmani, vía Marc Rubiño - [ASP.NET vNext] Model Binding: Actualizando datos (Ya tenemos Data Annotations!)
Luis Ruiz - Estudiando el diseño de jQuery paso a paso
Carlos Benítez - Sync Framework now Open Source.
Eric Golpe - [ASP.NET vNext] Model Binding: Filtrando datos
Luis Ruiz Pavón - Volatile fields in .NET.
BlackWasp - EF vNext-Migrations - I
Unai Zorrilla - ¡Feliz día del programador!
Wikipedia - [Tip] Intellisense entre ficheros .Js
Marc Rubiño - Usando SQL Server Table-Valued Parameters en C# (mediante un Custom Iterator)
Lluis Franco - [WebCast] Mecanismos de validación en ASP.MVC 3
AUGES - Dictionary of Algorithms and Data Structures.
National Institute of Standards and Technology - Evento de ADO.NET en Second Nug.
Omar del Valle - C#/.NET Little Wonders: The String Split() and Join() methods.
James Michael - Simulating Function Overloading in #JavaScript
Joe Stagner - ¿Realmente emerge el diseño con TDD?
Josep Maria Camps. - ASP.NET page methods are only as secure as you make them
Dave Ward - Leer variables Session desde una capa de Negocios
Jesús Velasco, vía Omar del Valle.
Y no olvides que puedes seguir esta información en vivo y en directo desde Variable not found en Facebook, o a través de Twitter.
Publicado en: Variable not found