2012-09-07 12 views
6

Estoy escribiendo para ASP.NET usando C# y me preguntaba si es posible obtener las siguientes palabras en su forma localizada (preferiblemente abreviado)?¿Puedo obtener abreviaturas localizadas para los parámetros de tiempo con C# en ASP.NET?

  • Segunda
  • Minuto
  • horas
  • Día
  • Semana
  • Mes
  • Año
+0

¿Cuál sería el beneficio de esto? Incluso si tuviera las traducciones, no podría usarlas para construir cadenas localizadas de fecha y hora. – McGarnagle

+1

Estoy escribiendo una función que debe mostrar el lapso de tiempo con el valor más significativo convirtiéndolo de minutos. Por ejemplo, si tengo 0.5 debería devolver "30s" para inglés, pero si tengo 525949.0 debería devolver "1yr", etc. – c00000fd

Respuesta

4

Puede localizar algunas partes de la hora usando:

  • CultureInfo.DateTimeFormat.GetDayName
  • CultureInfo.DateTimeFormat.GetAbbreviatedDayName
  • CultureInfo.DateTimeFormat.GetMonthName
  • CultureInfo.DateTimeFormat.GetAbbreviatedMonthName

He creado una implementación personalizada TimeCalendar con el proveedor de formato ITimeFormatter (método GetDuration) en mi Time Period Library for .NET. Está utilizando un archivo de recursos para localizar las partes de tiempo.

+0

Gracias. Buen articulo. – c00000fd

2

El tiempo de ejecución .Net no incluye las versiones localizadas de estos palabras. Tendrá que proporcionarlos usted mismo.

+0

Sí, parece que tendré que agregarlos al recurso. – c00000fd

Cuestiones relacionadas