Как обрабатывать поле DayOfWeek в базе данных, когда пользователи из разных часовых поясов запрашивают данные?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как обрабатывать поле DayOfWeek в базе данных, когда пользователи из разных часовых поясов запрашивают данные?

Сообщение Anonymous »

В моей базе данных есть таблица, в которой один из столбцов представляет день недели (

Код: Выделить всё

DayOfWeek). Этот столбец используется для хранения информации о повторяющихся сеансах, происходящих в определенные дни (например, понедельник, вторник).
Таблица сеансов
включает значения startTime и endTime< Столбцы /code>, оба определены как Time, которые представляют конкретное время сеансов в соответствующий день недели в группе.
Проблема, с которой я столкнулся как правильно вернуть данные для пользователей из разных часовых поясов. Поскольку DayOfWeek хранится на основе даты UTC, пользователи из других часовых поясов могут видеть неправильный день, если их местное время переходит на следующий или предыдущий день.
I понимаю, что если я использую DayOfWeek, ActiveDate не будет использоваться, и наоборот. Я ищу лучший подход для динамической обработки этой проблемы и обеспечения того, чтобы пользователи из разных часовых поясов видели правильный день и время.
Мои таблицы:

Код: Выделить всё

public class Group : BaseEntity
{
public DayOfWeek? DayOfWeek { get; set; }
public DateTime? ActiveDate { get; set; }
public bool ForActiveDate { get; set; }

public ICollection GroupSessions { get; set; }
}

public class Session : BaseEntity
{
public TimeSpan StartTime { get; set; } // 03:30 - ...
public TimeSpan EndTime { get; set; } // ... - 05:00
public string Title { get; set; } = string.Empty;

public ICollection GroupSessions { get; set; }
}
Будем очень признательны за любые советы или примеры того, как этого добиться!
Это для веб-API ASP.NET Core, написанного на C#< /п>

Подробнее здесь: https://stackoverflow.com/questions/790 ... time-zones
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»