¿Alguien podría dar un ejemplo para demostrar el uso de la Cultura Invariante ? No entiendo lo que describe la documentación.
.net
globalization
Ricky
fuente
fuente
Respuestas:
La cultura invariante es una cultura especial que es útil porque no cambiará. La cultura actual puede cambiar de un usuario a otro, o incluso de una carrera a otra, por lo que no puede confiar en que se mantenga igual.
Poder usar la misma cultura cada vez es muy importante en varios flujos, por ejemplo, la serialización: puede tener un valor de 1,1 en una cultura y 1,1 en otra. Si intenta analizar el valor "1,1" en la segunda cultura, el análisis fallará. Sin embargo, puede usar la cultura invariante para convertir un número en una cadena y luego analizarlo desde cualquier computadora con cualquier conjunto de cultura.
fuente
System.Globalization
espacio de nombres.CultureInfo.InvariantCulture
funciona porque serializaste con la misma cultura ... ¿no es lo mismo que usarCultureInfo.CurrentCulture
?CultureInfo.InvariantCulture
entonces sabe que siempre podrá volver a analizar con un decimal usandoCultureInfo.InvariantCulture
. Si usaCultureInfo.CurrentCulture
para serializar, su usuario podría tener "en-US" como su cultura actual. El siguiente usuario que vaya a analizarlo de nuevo a un decimal podría tener una cultura actual que use "," para un separador.Una cultura falsa basada en el inglés con comportamiento definido. Excelente para escribir, por ejemplo, cosas en archivos de configuración para que puedan leerse y escribirse independientemente de la cultura que el usuario haya definido.
Básicamente es una cultura específica que es artificial y no cambiará .
fuente
Se usa para cosas que son iguales independientemente de la cultura (que no es necesario traducir a alguna cultura X para ser apropiado)
como por ejemplo: https://msdn.microsoft.com/en-us/library/4c5zdc6a(v=vs.100).aspx . Cuando escribe un archivo específico de la aplicación con el que el usuario no debería estar jugando, debe usar InvariantCulture para todos los métodos que incorporan un parámetro de cultura.
Tenga en cuenta que según los documentos vinculados anteriormente:
fuente
La cultura invariante es insensible a la cultura; está asociado con el idioma inglés pero no con ningún país / región.
CultureInfo.InvariantCulture recupera una instancia de la cultura invariante. Se puede usar en casi cualquier método en el sistema. Espacio de nombres de globalización que requiere una cultura.
Los objetos devueltos por propiedades como CompareInfo, DateTimeFormat y NumberFormat también reflejan la comparación de cadenas y las convenciones de formato de la cultura invariante. La propiedad InvariantCulture es útil cuando desea mostrar datos persistentes en una cultura independiente formato .
Por ejemplo, si desea mostrar un número o una fecha y hora en un formato específico independiente de la cultura actual de la aplicación, puede usar CultureInfo.InvariantCulture .
fuente
Es un idioma inglés universal, simple, no regional, específico y otra información relacionada. Es como el lenguaje del lenguaje de programación en sí. Puede confiar en él para configurar un calendario universal; en situaciones en las que necesita generar nombres de controlador, URL, nombres de delegado ... etc. y necesitan cosas para actuar de forma natural y universal entre todos los usuarios.
fuente