Después de buscar en el sitio web, publico esta pregunta. Soy consciente del hecho de que los ensamblajes predeterminados son "cultura neutra" y se pueden crear ensamblajes satelitales con solo recursos (y ningún código) con información cultural específica y colocarlos dentro de la misma carpeta que el nombre de la cultura (es decir, en-us) . Pero la pregunta es, ¿qué es la cultura? Algunos ejemplos específicos de la vida real ayudarían.¿Qué es la cultura de ensamblado de .NET?
Respuesta
Por MSDN, esto incluye cosas tales como the names for the culture, the writing system, the calendar used, and formatting for dates and sort strings.
Para las traducciones, el aspecto más significativo es una combinación de idioma y dialecto. Aquí hay un buen list of examples.
Por ejemplo, considere el inglés británico (en-GB) frente al inglés estadounidense (en-US) frente al inglés canadiense (en-CA) frente al inglés australiano (en-AU) frente a los al menos otros diez idiomas inglés dialectos que existen (no bromeo/vea la lista que he vinculado). Luego, compare y contraste para decir ruso como se habla en Rusia (ru-RU). Además de las diferencias de idioma, también hay diferentes símbolos utilizados para el indicador de radix, agrupación de dígitos, fecha (MDY vs DMY), etc. ...
Son muchas cosas dd/mm/aaaa en lugar de mm/dd/yyy
EUR1.500,00 en lugar de $ 1,500.00
Es criterios de ordenación de izquierda a derecha, o de derecha a izquierda.
Básicamente la cultura es la forma de abstraer todas estas cuestiones realmente irritante, por lo que se quedan con los dos problemas principales que tenemos que hacer frente a
Uso de la cultura instalado sin tener que saber de qué se trata, por ejemplo, DateTime.Now.ToString("d");
Utilice esta cultura específica pase lo que pase.
DateTime.Now.ToString("d",_currentUser.Culture);
Una de las partes más valiosas de .net esto. Solía ser una pesadilla total.
Gracias Toni. Eso ayuda. Entonces, ¿dónde puedo especificar la información cultural? En el archivo AssemblyInfo.cs? Tan pronto como lo hago, viola la regla de que los ensamblados específicos de una cultura no deberían tener ningún código (solo se permiten los recursos). Estoy seguro de que me falta algo aquí :) – IntelligentBinary
Bueno, ¿ya hay una pata de zorro más grande que Toni? Lea esto para las recomendaciones de MS http://msdn.microsoft.com/en-us/library/w7x1y988.aspx –
- 1. ¿Qué es la cultura invariante?
- 2. ¿Qué es una cadena de cultura
- 3. .NET - Obtenga el nombre de la cultura del código de cultura
- 4. Obteniendo la fecha de un ensamblado .NET
- 5. ¿Es posible desactivar la reflexión desde un ensamblado .NET?
- 6. Prioridades de carga del ensamblado .NET
- 7. ¿Comparar 2 versiones de un ensamblado .NET?
- 8. ¿Cuál es el punto de la demora en la firma de un ensamblado .NET?
- 9. No se han encontrado recursos apropiados para la cultura especificada o la cultura neutral
- 10. Cambiar la cultura DateTimePicker para .Net especialmente el calendario persa
- 11. ¿Restrinja el acceso al ensamblado de .NET?
- 12. ¿Cómo saber si un ensamblado .NET es dinámico?
- 13. ¿Es posible ejecutar un ensamblado .NET (dll) desde vbscript?
- 14. Comprobando si un archivo es un ensamblado .NET
- 15. ¿Qué sucede cuando .NET 4.0 hace referencia a un ensamblado de .NET 2.0?
- 16. Cambiar la versión de ensamblaje en un ensamblado .NET compilado
- 17. Obtener la moneda de la cultura actual?
- 18. ¿Cuál es una buena herramienta para analizar la dependencia del ensamblado en la aplicación .NET
- 19. ¿Qué es un ensamblado/aplicación/código/etc parcialmente confiable en .NET?
- 20. ¿Es posible determinar en qué idioma se escribió un ensamblado .NET ex post facto?
- 21. ¿Por qué el nombre de la cultura para inglés (Caribe) es "en-029"?
- 22. No se han encontrado recursos para la cultura especificada o la cultura neutral
- 23. C# Cultura de BackgroundWorker
- 24. Obtenga el valor AssemblyInformationalVersion del ensamblado .NET
- 25. ¿Qué es .NET Framework?
- 26. ¿El tamaño de ensamblado .NET afecta el rendimiento?
- 27. ¿Cómo registrar un ensamblado .NET como COM?
- 28. ¿Cómo usar el ensamblado .Net de Win32 sin registro?
- 29. Llamar al ensamblado de .NET desde Java: bloqueos de JVM
- 30. NASM es ensamblado puro, pero MASM es ensamblado de alto nivel?
Bien, pero ¿qué información va dentro del conjunto del satélite si no debería tener código dentro? De acuerdo con mi comprensión, Microsoft recomienda que los conjuntos de satélites consuman ensamblajes neutros para la cultura. – IntelligentBinary
Bueno, ciertamente puedes poner frases en el lenguaje de la cultura en la asamblea satelital de cada cultura. –
Son para problemas aún mayores, como la traducción. Entonces en su software de facturación cuando venda en el mercado alemán puede mostrar rechnungsstellung, el mercado del Reino Unido Factura, a pesar de que "usted" es francés y se llama la clase Facture –