Cómo cambiar el símbolo para el punto decimal en double.ToString ()?

Me gustaría cambiar el punto decimal a otro personaje en C #. Tengo un double value variable

 double value; 

y cuando uso el comando:

 Console.WriteLine(value.ToString()); // output is 1,25 

Sé que puedo hacerlo:

 Console.WriteLine(value.ToString( CultureInfo.CreateSpecificCulture("en-GB"))); // output is 1.25 

pero no me gusta mucho porque es muy largo y lo necesito con bastante frecuencia en mi progtwig.

¿Hay una versión más corta para establecer “punto decimal” realmente como punto y no coma como es habitual en mi cultura?

Algunos atajos son para crear una clase NumberFormatInfo, establecer su propiedad NumberDecimalSeparator en “.” y use la clase como parámetro para el método ToString () siempre que lo necesite.

 using System.Globalization; NumberFormatInfo nfi = new NumberFormatInfo(); nfi.NumberDecimalSeparator = "."; value.ToString(nfi); 

Crear un método de extensión?

 Console.WriteLine(value.ToGBString()); // ... public static class DoubleExtensions { public static string ToGBString(this double value) { return value.ToString(CultureInfo.GetCultureInfo("en-GB")); } } 

Tal vez estoy malinterpretando la intención de su pregunta, por lo tanto, corríjanme si me equivoco, pero ¿no puede aplicar la configuración de cultura globalmente una vez y luego no preocuparse por personalizar cada statement de escritura?

 Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-GB"); 

Puede cambiar el separador decimal cambiando la cultura utilizada para mostrar el número. Sin embargo, tenga en cuenta que esto cambiará todo lo demás sobre el número (por ejemplo, separador de agrupación, tamaños de agrupación, número de lugares decimales). A partir de su pregunta, parece que va a adoptar una cultura que usa una coma como separador decimal.

Para cambiar solo el separador decimal sin cambiar la cultura, puede modificar la propiedad NumberDecimalSeparator del NumberDecimalSeparator de la cultura actual.

 Thread.CurrentCulture.NumberFormat.NumberDecimalSeparator = "."; 

Esto modificará la cultura actual del hilo. Ahora se value.ToString() todo el resultado, lo que significa que puede usar value.ToString() para generar el formato que desee, sin preocuparse por cambiar la cultura cada vez que muestre un número.

(Tenga en cuenta que un cultivo neutral no puede tener su separador decimal cambiado).

Si tiene una aplicación web Asp.Net, también puede configurarla en el web.config para que sea la misma en toda la aplicación web.

  ...  ...