martes, 18 de octubre de 2011
Había comentado que una de las novedades que ya podíamos disfrutar en la developer preview de MVC 4 era el sistema de compactación y minimización de scripts y CSS, y que, además de ser bastante útil y sencillo, podíamos utilizarlo a día de hoy en nuestras aplicaciones MVC 3 e incluso en ASP.NET Webforms.
Este mecanismo hace posible la creación de bundles, o paquetes de uno o varios archivos de scripts o estilos, que son optimizados en tamaño por el servidor y cargados desde las páginas en una única petición. El proceso de compactación se realizaría en servidor, pero sólo la primera vez, quedando almacenado en caché para las peticiones posteriores.
Este mecanismo hace posible la creación de bundles, o paquetes de uno o varios archivos de scripts o estilos, que son optimizados en tamaño por el servidor y cargados desde las páginas en una única petición. El proceso de compactación se realizaría en servidor, pero sólo la primera vez, quedando almacenado en caché para las peticiones posteriores.
Publicado por José M. Aguilar a las 10:14 a. m.
Nadie ha comentado la entrada, ¿quieres ser el primero?
Etiquetas: asp.net, aspnetmvc, desarrollo, optimización
lunes, 17 de octubre de 2011
Estos son los enlaces publicados en Variable not found en Facebook y Twitter del 9 al 16 de octubre de 2011. Espero que os resulten interesantes. :-)
Publicado en: Variable not found
- 6 Super jQuery Slider Scripts and Tutorials
JS News & Resources - Conectar una Azure Cloud Drive directamente a tu equipo
David Rodríguez - Novedades para SQL Azure
Ibon Landa - [WebCast] Seguridad de aplicaciones Web: las técnicas más interesantes para que no hackeen tu aplicación, con José Manuel Alarcón
AUGES - Cómo detectar el cierre o la salida de una página Web
José Manuel Alarcón - The Developer’s Guide to AppFabric (ebook)
Adam Smith - Optimizing ASP.NET MVC3 Routing
Sam Saffron - AutoMapper (I) Flattening
Luis Ruiz Pavón - Intellitrace como tu sistema de rastreo
Unai Zorrilla - Three simple steps to create Azure tables
Neil Mackenzie - Naked objects goes open source
Naked objects group - ASP.NET MVC – Template Helpers
Sebis - Modernizr.js: feature detection
K. Scott Allen - SQL Azure DataSync Preview. Sincronizando… ¡Step by step!
Juan Luis Guerrero - Essential jQuery Plugin Patterns
Addy Osmani, vía Marc Rubiño - .NET Math Library
BlackWasp - ParallelLoopState and Parallel.ForEach
K. Scott Allen - Loading jQuery Consistently in a .NET Web App
Rick Strahl - El próximo martes 18, WebCast: Gestión de excepciones en .NET, con Jorge Serrano
SecondNug - Preventing CSRF With Ajax
Phil Haack - EF 4.2 Release Candidate Available
Vía Juan Carlos González - RFC: New Beta.ASP.net website
Scott Hanselman - Si trabajas con javascript seguro que conoces JSLint, pero sabías que lo tienes para Visual Studio?
Vía José Bonnin - Steve Jobs: ¿visionario o un tipo observador e inquieto?
José Manuel Alarcón - Usando querystring en ASP.NET MVC
Eduard Tomás - Range Requests in ASP.NET MVC – RangeFileResult
Tomasz Pęczek
Publicado en: Variable not found
jueves, 13 de octubre de 2011
Nos deja uno de los grandes. De forma discreta, sin notas de prensa ni fuegos artificiales, se va una de esas personas que han cambiado el mundo.
Descanse en paz.
Publicado en: Variable not found.
Descanse en paz.
Publicado en: Variable not found.
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
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"