Теоретически вы можете загрузить CultureInfo
, соответствующий языку / стране для Эфиопии.Похоже, что родным языком в Эфиопии является амхарский , который имеет сокращенный код ISO 639 «am», а код страны ISO 3166 для Эфиопии - «ET».Таким образом, представляется, что правильный культурный код для Эфиопии - "am-ET".Таким образом, попробуйте следующее.
CultureInfo ethiopia = new CultureInfo("am-ET");
int year = 2002; // it is currently 2002 in Ethiopia
int months = ethiopia.Calendar.GetMonthsInYear(year);
for (int i = 1; i <= months; i++) {
Console.WriteLine(ethiopia.Calendar.GetDaysInMonth(year, i));
}
А затем , поскольку 13-й месяц имеет пять или дней
DateTime time = new DateTime(2002, 13, 5, ethiopia.Calendar);
будет законным.
Если по какой-то причине это не работает, вы также можете посмотреть, как создать собственный календарь, используя этот CodeProject во Вьетнамском лунном календаре в качестве примера.