Как преобразовать convert_tz() в mysql в функцию C#
Функция mysql преобразования часового пояса в С# [дубликат]
Ответы (2)
Вероятно, существуют более чистые методы, но я сохраняю вспомогательную функцию, которая использует TimeZoneInfo (выполните поиск в документации MS, чтобы найти нужный вам идентификатор) в пользовательском классе TimeUtils
public static DateTime ConvertToMST(DateTime dt)
{
DateTime utc = dt.ToUniversalTime();
return TimeZoneInfo.ConvertTimeFromUtc(utc, TimeZoneInfo.FindSystemTimeZoneById("Mountain Standard Time"));
}
изменить:
Используйте TimeZoneInfo и выберите зону по ее идентификатору (вот почему и как их проверить)
ВАЖНО! Эти данные не являются статическими. Новые часовые пояса вводятся в Windows по мере внесения изменений правительствами мира. В конечном счете, именно поэтому в документах нет авторитетных страниц, на которых они перечислены. Не полагайтесь на какой-либо жестко запрограммированный список, а вызовите TimeZoneInfo.FindTimeZoneById() самостоятельно или используйте TZUTIL.EXE /L для их перечисления. Приведенные ниже ответы являются всего лишь моментальным снимком данных на момент их публикации. НЕ КОПИРУЙТЕ ОТСЮДА, ЧТОБЫ ЗАПИСАТЬСЯ В ВАШЕ ПРИЛОЖЕНИЕ!
Пример кода:
var exampleTime = DateTime.SpecifyKind(DateTime.Now,DateTimeKind.Unspecified);
DateTime result = TimeZoneInfo.ConvertTime(exampleTime,
TimeZoneInfo.FindSystemTimeZoneById("Europe/London"),
TimeZoneInfo.FindSystemTimeZoneById("America/Denver"));
До рассматриваемых изменений:
Для этого метода с такими параметрами такой перегрузки нет.
TimeZoneInfo.ConvertTime перегрузки — экран документации
Источник: Документация Microsoft
Я знаю, но я пытаюсь найти что-то, что может делать то, что я искал. Я относительно новичок в библиотеках С#, и существует так много разных функций часового пояса, что я немного потерялся.
@Энди, я отредактировал свой пост, посмотри. Я надеюсь, что это поможет, gl!
MySQL использует эту штуку, называемую tz или база данных zoneinfo. Я выбрал повторяющийся вопрос, потому что он показывает способы реализации той же базы данных на C#/dotnet.