Qué tipo de dato es el mejor para representar monedas en .Net?

La respuesta es Decimal

El tipo de dato Decimal representa números decimales con un rango desde el número positivo 79,228,162,514,264,337,593,543,950,335 al negativo 79,228,162,514,264,337,593,543,950,335. El Decimal es apropiado para cálculos financieros que requieren gran precisión en números con dígitos enteros y decimales que requieren ningun error de redondeo. El Decimal no elimina la necesidad de operaciones de redondeo. En su lugar, minimiza los errores de redondeo al aplicar estas operaciones. Si se elige el tipo de datos Double entonces se está expuesto a errores de redondeo.

Post traducido desde What is the best data type to use for currency in .NET?

**Artículo recuperado del historial de cache de internet. Artículo original: http://web.archive.org/web/20150907203214/http://www.jorgelevy.com/2014/09/que-tipo-de-dato-es-el-mejor-para-representar-monedas-en-net/#more-491

Calificador con estrellas para Asp .NET MVC (bootstrap stars rating)

Version docs.com: https://doc.co/Xje5LZ

Aunque no existe un componente de bootstrap para hacer el típico calificador con estrellas (rating, en inglés). Se presentan varias librerías en internet que nos permite utilizar algunos componentes de bootstrap para poder lograr la funcionalidad. En esta ocasión estaremos utilizando la librería bootstrap-rating.mvc, escrita por simonray, y que nos facilita la instalación al entregarnos un empaquetado Nuget.

El primer paso recomendado es actualizar los empaquetados Nuget que la plantilla MVC que Visual Studio provee.
*Al día de la publicación de este post las principales version son: jquery v3.1.1 y bootstrap v3.3.7

Una vez actualizados los paquetes preinstalados, ahora si nos enfocaremos en el paquete (en realidad los paquetes) que nos ofrecerán la funcionalidad esperada. Y para lograr esto, es cuestión de solo abrir la ‘Consola de manejador de Paquetes’ (Package Manager Console, en inglés) e instalar el paquete:

Adicionalmente será necesario instalar también el paquete, que es la paquetería del proyecto Font Awesome que include los iconos glyphs del proyecto bootstrap a utilizar:

Con este par de paquetes Nuget instalados, el siguiente paso consistirá en añadir las referencias a los archivos correspondientes CSS:

el de JavaScript:

Por último, para comenzar a usar el componente en su forma más básica solo basta con llamar el método extendido de la clase Html:

Pero está claro y es de esperarse que la librería nos entregue mayor funcionalidad en el componente. Entre las diferentes funcionalidades que el paquete nos ofrece esta la de pasarle un valor en un objeto modelo (@Model), hacer evaluaciones fraccionadas, marcar el componente como deshabilitado o solo de lectura, utilizar otro glyphs (icono), etc. Aquí el demo de estas funcionalidades así como el código necesario para realizar la función esperada.

Adicionalmente a las funciones que el empaquetado nuget prevee, con el siguiente código javascript podemos extender la funcionalidad. Con él podemos agregar el pequeño cuadro donde se ve el valor se calificación seleccionado, mostrar un tooltip del valor seleccionas o mostrar una alerta javascript para el manejador de eventos.

Aquí la dirección del demo: http://jlknowledgebase.jorgelevy.com/RatingControl

Y aquí el código del proyecto para tu referencia: https://github.com/KodiakMx/KnowledgeBase/tree/master/RatingControl