I can't to extract the name of day of week in italian language in my aspx page with c#.
I have tried this solution but in the output I have Friday, what wrong?
DateTime ItalianJobCookie = DateTime.Parse(Request.Cookies["ItalianJob"].Value);
string ItalianJobCookieDayName = ItalianJobCookie.DayOfWeek.ToString("G", new CultureInfo("it-IT"));
Response.Write(ItalianJobCookieDayName.ToString());
DayOfWeek
is culture invariant. It's always returns english-based day names.
From documentation;
The members of the DayOfWeek enumeration are not localized. To return the localized name of the day of the week, call the DateTime.ToString(String) or the DateTime.ToString(String, IFormatProvider) method with either the "ddd" or "dddd" format strings. The former format string produces the abbreviated weekday name; the latter produces the full weekday name.
You need to use dddd
format specifier with it-IT
culture.
string ItalianJobCookieDayName = ItalianJobCookie.ToString("dddd", new CultureInfo("it-IT"));
DateTime.DayOfWeek
returns a DayOfWeek
of a given DateTime which has no ToString
that supports different cultures. This is even documented :
The members of the DayOfWeek enumeration are not localized . To return the localized name of the day of the week, call the DateTime.ToString(String) or the DateTime.ToString(String, IFormatProvider) method with either the "ddd" or "dddd" format strings. The former format string produces the abbreviated weekday name; the latter produces the full weekday name.
Instead use it with DateTime
string ItalianJobCookieDayName = ItalianJobCookie.ToString("dddd");
if the current culture is italian, otherwise:
string ItalianJobCookieDayName = ItalianJobCookie.ToString("dddd", new CultureInfo("it-IT"));
If you want the abbreviated day-name use ddd
instead of dddd
. Further informations .
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.