Less ugly way to localize DayOfWeek?

using System; namespace Server.Custom.Extensions { public static class FriendlyExtensions { public static string Friendly(this DayOfWeek day) { if (day == DateTime.Now.DayOfWeek) return "Hoy"; int dayOfWeek = (int)DateTime.Now.DayOfWeek; int dayOfEvent = (int)day; if (dayOfWeek + 1 == dayOfEvent || (dayOfWeek == 6 && dayOfEvent == 0)) return "MaΓ±ana"; switch (day) { default: case DayOfWeek.Monday: return "Lunes"; case DayOfWeek.Tuesday: return "Martes"; case DayOfWeek.Wednesday: return "Miercoles"; case DayOfWeek.Thursday: return "Jueves"; case DayOfWeek.Friday: return "Viernes"; case DayOfWeek.Saturday: return "Sabado"; case DayOfWeek.Sunday: return "Domingo"; } } } } 

Is there a way to localize this with Cultures? how? :( By the way, I want to say "Today" or "Tomomorrow" too, and not just convert days

+4
source share
2 answers
 DateTime.Now.ToString("ddd", new CultureInfo("es-ES")); 

or

 DateTime.Now.ToString("dddd", new CultureInfo("es-ES")); 

Literature:

+7
source

This code from here (see below) may put you on the right path.

  CultureInfo german = new CultureInfo("de-DE"); DateTimeFormatInfo dtfi = german.DateTimeFormat; Console.WriteLine("Days of the week for the {0} culture:", german.Name); for (int ctr = 0; ctr < dtfi.DayNames.Length; ctr++) Console.WriteLine(" {0,-12}{1}", dtfi.DayNames[ctr], dtfi.DayNames[ctr] == dtfi.DayNames[(int)dtfi.FirstDayOfWeek] ? "(First Day of Week)" : ""); 
+4
source

All Articles