Часть локального приложения, которое я перемещаю в облако, отображает информацию о расписании телепередач из источника json. Основные данные используют смещение в секундах от даты начала, чтобы получить время начала, и это нормально, поскольку все они имеют формат int UTC.
Проблема возникает при движении в облако.
Локальное приложение было расположено в Великобритании, поэтому локаль — UntedKingdom, а время телепередач правильно выводилось с использованием
return programmeStart.AddHours(programmeStart.IsDaylightSavingTime() ? 1 : 0);
Однако после перемещения в облако функция IsDaylightSavingTime больше не возвращает значение true из-за того, что центры обработки данных не зависят от BST.
Ломала голову, как бы попытаться разобраться в этом.
Есть ли быстрый и простой способ установить, в какой локали работает ваша размещенная служба в Azure, или это лучшее решение для создания метода расширения, который считывает границы того, когда BST запускается от и до, а затем возвращает true или false оттуда для пример
public static class DateTimeExtension
{
public static bool IsMyDaylightSavingTime(this DateTime timeToTest)
{
if(timeToTest >= GetConfig("bstStart") && timeToTest <= GetConfig("bstFinish"))
{
return true;
}
return false;
}
}
И как поддерживать значения конфигурации bst при перемещении?
Спасибо