jueves, 23 de octubre de 2014

Regionalizacion en MVC5

Diseñaste tu modelo, hiciste tu controlador y agregaste una vista para interactuar con tus datos. Todo muy bonito hasta que te chocas con los campos con números decimales y no hay forma de hacerle entender a la aplicación que lo que estas agregando es un numero.

Te empiezan a aparecer mensajes como "The field XX must be a number" o mensajes parecidos. No hay forma por mas que utilizes la coma o el punto como separador de decimales.

La solución, instalar un paquete que contenga las distintas culturas y utilizarlo para la validación.

Paso 1. Instalar el paquete. Desde Visual Studio Express 2013para Web vamos a Herramientas->Administrador de paquetes de biblioteca->Administrar paquetes NuGet para la solución (Fig 1.).



Fig 1

Existen muchos paquetes que podríamos utilizar, en este caso utilizo Globalize. Escribimos globalize en el cuadro de búsqueda y cuando el mismo aparezca lo seleccionamos y hacemos clic en Instalar (Fig 2.).


Fig 2.
Una vez instalado tenemos que modificar la validación en cada una de las vistas donde agreguemos o editemos valores decimales. Debemos agregar lo siguiente a esas vistas:


Y al fin podemos utilizar decimales, y lo mas importante aún, utilizar la coma!

Para mas detalles consultar los sgtes links:

http://www.asp.net/mvc/tutorials/mvc-5/introduction/examining-the-edit-methods-and-edit-view
http://afana.me/post/aspnet-mvc-internationalization.aspx
http://afana.me/post/aspnet-mvc-internationalization-part-2.aspx


No hay comentarios: