Saltar al contenido

Artículos, tutoriales, trucos, curiosidades, reflexiones y links sobre programación web ASP.NET Core, MVC, Blazor, SignalR, Entity Framework, C#, Azure, Javascript... y lo que venga ;)

17 años online

el blog de José M. Aguilar

Inicio El autor Contactar

Artículos, tutoriales, trucos, curiosidades, reflexiones y links sobre programación web
ASP.NET Core, MVC, Blazor, SignalR, Entity Framework, C#, Azure, Javascript...

¡Microsoft MVP!
domingo, 21 de noviembre de 2010
Estos son los enlaces publicados en Variable not found en Facebook y Twitter desde el domingo, 14 de noviembre de 2010 hasta el domingo, 21 de noviembre de 2010. Espero que te resulten interesantes. :-)
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
domingo, 14 de noviembre de 2010
Estos son los enlaces publicados en Variable not found en Facebook y Twitter desde el domingo, 07 de noviembre de 2010 hasta el domingo, 14 de noviembre de 2010. Espero que te resulten interesantes. :-)
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
lunes, 8 de noviembre de 2010
aspnetmvc Hace poco he estado trabajando en un sistema, desarrollado con ASP.NET MVC, en el que el usuario debía introducir una gran cantidad de datos numéricos dispuestos por filas y columnas, de forma muy similar a una hoja de cálculo:

Captura de imagen de aplicación

Para conseguir una experiencia de usuario lo mejor posible, introduje en la vista scripting para formatear las celdas, de forma que cuando una de ellas toma el foco, se elimina su formato, mientras que cuando lo pierde, se le aplicaba el formateo numérico correcto. Hasta ahí, sin problema.

Nota al margen: para formatear y parsear los valores numéricos en cliente he utilizado por primera vez el nuevo plugin de globalización para jQuery que ya presentó Scott Guthrie hace algún tiempo. Me ha parecido magnífico y muy sencillo de utilizar, a ver si un día escribo algo sobre él.

Bueno, a lo que iba; el único problema de utilizar este enfoque es que, al aceptar el formulario, el valor de los campos es enviado tal y como aparecen en los controles de edición, separador de miles incluido, por lo que el binder para el tipo decimal no es capaz de identificarlos apropiadamente utilizando su lógica por defecto.

Sin embargo, dada la facilidad del framework para reemplazar estos comportamientos, es realmente sencillo introducir un binder personalizado capaz de recoger estos valores y retornar el valor decimal correcto, que es realmente lo que pretendemos que llegue al modelo.

El código del binder es el siguiente:

Código del binder
Y para que el framework ASP.NET MVC utilice este binder para las propiedades o parámetros de tipo decimal, basta con registrarlo en el global.asax, como sigue:

Registro del binder en el global.asax
Publicado en: Variable not found.
domingo, 7 de noviembre de 2010
Estos son los enlaces publicados en Variable not found en Facebook y Twitter desde el domingo, 25 de octubre de 2010 hasta el domingo, 07 de noviembre de 2010. Espero que te resulten interesantes. :-)
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
martes, 2 de noviembre de 2010
Hace unos días contestaba a una cuestión sobre la creación de helpers en Razor, y mostré un ejemplo como el siguiente:

image

Se trata de una forma puramente funcional de crear un helper: creamos una función que retorna una cadena de texto, y como en el ejemplo anterior, podemos invocarla desde cualquier parte de la vista.

Sin embargo, Razor dispone de otro tipo de helpers, llamados helpers declarativos, que ya fueron descritos hace algún tiempo por Scottgu, aunque hasta la Beta de MVC 3 no hemos podido verlos en  funcionamiento.

Los helpers declarativos son funciones que permiten introducir en su cuerpo tanto código como marcado HTML, al igual que se hace sobre la propia página o vista, lo que permite construcciones mucho más legibles.

Su codificación es muy similar a de las funciones, salvo en que en este caso no tienen ningún tipo de retorno, y son precedidas por @helper, como se observa a continuación:

Ejemplo de helper declarativo
Publicado en: Variable not found.