Pregunta

Uso Javascript en la interfaz, C # como capa media y Oracle 9i como DB.

¿Cuál es la mejor práctica al formatear números con una precisión de 2 decimales en una moneda? ¿Y qué capas deberían preferirse entre cualquiera de estas tres capas?

Teniendo en cuenta que el Usuario podrá editar estas cantidades en algunas de mis pantallas en la aplicación.

¿Fue útil?

Solución

El almacenamiento de su decimal puede tener una precisión mayor que 2 dígitos. Ya que menciona C # y Javascript, puedo asumir que está usando ASP.NET para su interfaz.

La visualización de la moneda debe manejarse en su código ASP.NET, para mostrarla en función de la configuración regional / cultureinfo de su usuario.

Para sus vistas de cuadrícula y otros controles de visualización, en C #, puede usar la opción de formato de cadena: {0: c} para mostrar la moneda con el símbolo correcto y 2 decimales.

Otros consejos

Yo diría que hágalo tan cerca del usuario como sea práctico. No está en la base de datos, ya que la base de datos no estará al tanto de la configuración regional del usuario.

Actualizar: tenga en cuenta, al realizar el formateo de moneda, que está mostrando información al usuario que es realmente correcta. El formato de moneda no es lo mismo que la conversión de moneda ...

si desea realizar alguna operación matemática en sus datos, será mucho mejor realizar el formateo en Javascript y agregar el símbolo de moneda.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top