在C#中是否有内置的月份名称variables?
我想知道是否有任何内置的.NETfunction支持名词declensions的语言的date(即在俄罗斯的月份名称是февраль
,但如果我想说的date或说某事是由于,我会使用formsфевраля
)。 我做了我自己的版本,适用于这种情况,但是我需要扩展到其他情况和其他语言,这些语言会有自己的date变化。
这个function是内置的,还是可以在外部库中使用? 感谢您的任何帮助。
如果我的解释不清楚的话,我已经提供了俄罗斯所有权案件的function。
public static string DeclineMonth(this DateTime time) { var month = time.ToString("MMMM"); if (month.Last() == 'ь') return month.Replace('ь', 'я'); else return month + "a"; }
你可以在两种情况下获得几个月的名字, 提名 :
DateTimeFormatInfo info = CultureInfo.GetCultureInfo("ru-RU").DateTimeFormat; // February: 2 - 1 (array is zero based) - "Февраль" Console.Write(info.MonthNames[2 - 1]);
和Genitive :
// February: 2 - 1 (array is zero based) - "февраля" Console.Write(info.MonthGenitiveNames[2 - 1]);
其他情况(如Dative , Accusative )不受支持,我们必须手动实施。