获取DayOfWeek值的本地化字符串

Joe*_*oeB 12 .net c# datetime localization date

此代码未本地化:

Enum.GetNames(typeof(DayOfWeek))
Run Code Online (Sandbox Code Playgroud)

我想要一个方法,返回一个本地化字符串列表,从任意DayOfWeek开始,本地化,我想使用内置资源这样做.到目前为止,我已经提出了下面的代码,但我觉得这应该以一种不像黑客的方式得到支持.

    public List<String> GetLocalizedDayOfWeekValues(DayOfWeek startDay = DayOfWeek.Sunday)
    {
        var days = new List<String>();
        DateTime date = DateTime.Today;

        while (date.DayOfWeek != startDay)
            date.AddDays(1);

        for (int i = 0; i < 7; i++)
            days.Add(date.ToString("dddd"));

         return days; 
    }
Run Code Online (Sandbox Code Playgroud)

知道更好的方法,请分享.谢谢!

Jon*_*eet 28

我想你在找DateTimeFormatInfo.DayNames.示例代码:

using System;
using System.Globalization;

class Program
{
    public static void Main()
    {
        var french = new CultureInfo("FR-fr");
        var info = french.DateTimeFormat;
        foreach (var dayName in info.DayNames)
        {
            // dimanche, lundi etc
            Console.WriteLine(dayName);
        }
    }    
}
Run Code Online (Sandbox Code Playgroud)