lunes, 10 de octubre de 2011
Estos son los enlaces publicados en Variable not found en Facebook y Twitter del 3 al 10 de octubre de 2011. Espero que os resulten interesantes. :-)
Publicado en: Variable not found
- Aplicaciones "de una página" con soporte para F5 y back en ASP.NET MVC y la History API de HTML5
Eduard Tomás - MVC y WIF
Unai Zorrilla - Encuesta :: ¿Qué tipo de Framework de Mocks utilizas para .NET?
Jorge Serrano - [Patrones] Intercepción de llamadas a métodos (III) IoC containers
Luis Ruiz Pavón - ASP.NET MVC 4 Overview - Part 2: Default template changes and Adaptive Rendering using Viewport and CSS Media Queries
John Galloway - What you Should be Excited About in jQuery UI 1.9
Dan Wellman - Consejos, trucos y herramientas para comenzar a usar HTML5 hoy mismo
Vía Carlos Benítez - Cómo comparar objetos y arrays en Javascript
Carlos Benítez - Brain, Bytes, Back, Buns - The Programmer's Priorities
Scott Hanselman - [Patrones] Intercepción de llamadas a métodos (II) AOP
Luis Ruiz Pavón - Creating custom unobtrusive file extension validation in ASP.NET MVC 3 and jQuery
Tomas Jansson - Remembering Steve Jobs
Apple
Using enums in javascript – almost
Joe Stagner - Practical CSS3 tables with rounded corners
Catalin Rosu - Internals of Constants and Readonly
Zen Walker - Using CSS3 Transitions, Transforms and Animation
Rich Bradshaw - ASP.NET Site Traffic and Statistics Monitoring
Xianzhong Zhu - Cargar scripts bajo demanda con JQuery
Marc Rubiño - Usar Recaptcha en ASP.NET MVC (desde cero)
Eduard Tomás - [Patrones] Intercepción de llamadas a métodos (I) Patrón Decorator
Luis Ruiz Pavón - Pluggable Model Conventions
Stuart Leeks - Prevent Forms Authentication Login Page Redirect When You Don’t Want It
Phil Haack - Working with Lazy Loading in Entity Framework Code First
Steve Smith - How To- Utilizar PrincipalPermission para bloquear Funcionalidades
Javier Torrecilla - Squish your CSS and JS files in your ASP.NET web apps
Hajan Selmani - Sharing Controller Actions with ControllerExtenders
Shannon Deminick
Intellisense de JQuery en Visual Studio
Óscar Sotorrío - 3 Tips to Improve Your Connection Strings
Steve Smith - Visual Studio 11 Programming Language Advances
Somasegar - ASP.NET MVC 3 for Visual Studio 11 Developer Preview
Microsoft Downloads - Carencias de Sql CE 4.0 en Visual Studio 2010
Pablo Núñez - CSS 3 text-shadow in IE10
IEBlog - How to Use HTML5 File Drag & Drop
Craig Buckler
Publicado en: Variable not found
Publicado por José M. Aguilar a las 9:24 a. m.
Nadie ha comentado la entrada, ¿quieres ser el primero?
Etiquetas: enlaces
miércoles, 5 de octubre de 2011
Hace unos días, el amigo Cadavid realizaba una consulta en los comentarios de la serie de posts que escribí hace unos meses sobre el helper Webgrid, sobre cómo podíamos implementar filtros personalizados sobre los datos mostrados, y dado que no es algo que se pueda explicar en un simple comentario, me comprometí a escribir un post sobre el tema, así que ahí va.
El problema fundamental es que WebGrid no incorpora ningún tipo de ayuda para realizar esta tarea tan frecuente; simplemente se encarga de mostrar los datos que le suministremos, por lo que si queremos filtrarlos debemos hacerlo de forma manual. En pura teoría bastaría con hacer llegar a Controlador los filtros a aplicar, y que éste consultara la información desde el Modelo teniendo en cuenta los criterios establecidos.
Sin embargo, algo que puede parecer relativamente simple se complica un poco si queremos, además, mantener intacta la capacidad de ordenación y paginación de datos, puesto que debemos encargarnos también del mantenimiento del estado entre peticiones. Pero vaya, no es nada que no podamos solucionar en unos minutos ;-)
El problema fundamental es que WebGrid no incorpora ningún tipo de ayuda para realizar esta tarea tan frecuente; simplemente se encarga de mostrar los datos que le suministremos, por lo que si queremos filtrarlos debemos hacerlo de forma manual. En pura teoría bastaría con hacer llegar a Controlador los filtros a aplicar, y que éste consultara la información desde el Modelo teniendo en cuenta los criterios establecidos.
Sin embargo, algo que puede parecer relativamente simple se complica un poco si queremos, además, mantener intacta la capacidad de ordenación y paginación de datos, puesto que debemos encargarnos también del mantenimiento del estado entre peticiones. Pero vaya, no es nada que no podamos solucionar en unos minutos ;-)
martes, 4 de octubre de 2011
Blogger invitado
Óscar Sotorrío Sánchez
Senior Analyst en Avanade, MCP C#
Eterno aprendiz en esto de las tecnologías .NET y en especial con ASP.NET. Admirador de la filosofía de Internet y entusiasta de los nuevos modelos de negocio que rigen este mundillo.Blog: oscarsotorrio.com
En primer lugar vamos a dar una definición más o menos formal y después veremos algunos ejemplos que explicarán mejor esta definición:
"Los objetos de JavaScript son colecciones de propiedades cada una con un nombre y un valor. Este valor puede ser otro objeto, por lo tanto, podemos decir también que los objetos JavaScript son contenedores para otros objetos JavaScript"
lunes, 3 de octubre de 2011
Ahí van los enlaces publicados en Variable not found en Facebook y Twitter del 26 de septiembre al 2 de octubre de 2011. Espero que os resulten interesantes. :-)
Publicado en: Variable not found
- Nullable Types' Subtlety
Mehdi Khalili - Mvc.ValidationTookit Alpha Release: Conditional Validation with MVC 3
Simon J. Ince
Ya está disponible el libro de Windows Phone 7.5 "Mango" de Josue Yeray Julián
Vía Krasis Press - Estudiando el diseño de jQuery paso a paso (II Parte)
Carlos Benítez - Converting a .NET DateTime object to a JavaScript Date object
Jason N. Gaylord - Simple, fast and useful MiniProfiler for ASP.NET MVC
Hajan Selmani
Progressive Enhancement With Backbone.js
Derick Bailey - What good Web Developers should know about sending E-mail
Doug Rathbone - The HTML5 Article Tag – Fixing the World Wide Web
Joe Stagner - Testing Inbound Routes
Manning Publications - ASP.NET MVC 3 Controller for Serving Images
Justin Schwartzenberger - PDF reporting using ASP.NET MVC3
Patrick Kalkman - Interesante artículo sobre si los ORMs son un antipatrón y la respuesta de Ayende
Vía Eduard Tomás - Funciones escalares en TSQL, JOINS, CROSS APPLY, y la madre que parió al topo
Lluis Franco - Analizando el bucle for-in en Javascript
Carlos Benítez - Essential JavaScript Namespacing Patterns
Addy Osmani - jQuery and the not selector
John Whish - C#/.NET Little Wonders: String Padding and Trimming - Not Just for Spaces!
James Michael - Automapper 2.0 released
Vía Jimmy Board @ LosTechies - An introduction to ASP.NET MVC extensibility
Simone Chiaretta
Publicado en: Variable not found
jueves, 29 de septiembre de 2011
Iba a publicar un enlace hacia este documento en Twitter y Facebook, pero me ha parecido tan interesante que merece un post independiente.
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.
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.
miércoles, 28 de septiembre de 2011
Bueno, pues ayer por la tarde echamos un buen rato hablando sobre los Mecanismos de Validación de ASP.NET MVC 3 en Auges.
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:
Enlaces:
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)