Как использовать NODATIME для персидского в C#?
nodatime 1.3 released
, но я хочу использовать nodatime
в c#
для персидского времени даты. как я могу показать персидское время с Noda Time?
var london = DateTimeZoneProviders.Tzdb["Europe/London"];"
Что я должен сделать для персидского?
1 ответ
Решение
Вам нужно явно использовать персидский календарь.
Например:
var calendar = CalendarSystem.GetPersianCalendar();
var zone = DateTimeZoneProviders.Tzdb["Europe/London"];
var now = SystemClock.Instance.Now.InZone(zone, calendar);
// Now you can get the month, etc.
Или создать LocalDate
или же LocalDateTime
просто передайте календарь в качестве последнего аргумента в вызове конструктора:
var localDate date = new LocalDate(1393, 4, 17, calendar);
Обратите внимание, что используется часовой пояс Лондона в системе персидского календаря. Календарные системы и часовые пояса - это очень разные вещи. Если вы хотите, например, часовой пояс Тегерана, вы должны использовать:
var zone = DateTimeZoneProviders.Tzdb["Asia/Tehran"];