значение datetime.Сейчас.ToUniversalTime() имеет неправильный год
И идея, Почему год выглядит как 2555?

Культура сайта тайская
2 ответа:
Да-каждый раз, когда
DateTimeпреобразуется в строку без явно заданного языка и региональных параметров, он будет использовать календарную систему текущего языка и региональных параметров. Однако сами компонентыDateTimeвсе еще отражают Григорианский календарь.Вы увидите 2555, если используете:
int thaiYear = new ThaiBuddhistCalendar().GetYear(DateTime.Now);В принципе, если вы хотите получить информацию о конкретной дате программно, вам нужно использовать
System.Globalization.Calendar. При форматировании даты убедитесь, что вы указали правильный язык и региональные параметры для календаря, который хотите использовать.