В чем разница между DateTime.ToUniversalTime и TimeZoneInfo.ConvertTimeToUtc

Я только начинаю задумываться о развертывании веб-приложения, которое нужно будет делать с пользователями в начале дня, скажем, в 6 утра. Также в конце их дней.

Везде я читал о людях, которые много говорят только о том, чтобы использовать .ToUniversalTime для хранения времени в UTC, но когда я попробовал это (как я подозревал), это не сработало, а просто сдвинуло время примерно на час ( Я нахожусь в Великобритании, поэтому я подумал, что это связано с некоторым смещением от GMT к UTC, хотя для меня это не имеет смысла, поскольку в настоящее время экономия дневного света должна быть отключена).

У меня есть поле в базе данных, в котором хранится часовой пояс пользователя, и поэтому, когда я начал использовать ConvertTimeToUtc и fromUtc, он начал делать то, что ожидал. Хотя, опять же, я не уверен, должен ли я сам строить какую-то логику для перехода на летнее время, или он должен сделать это для меня.

Я в основном задаюсь вопросом, почему все говорили о .ToUniversalTime, поскольку это действительно не помогло мне, и я не мог понять, как он мог узнать, сколько можно компенсировать время, чтобы перевести его на UTC, тогда как второй способ имело смысл.

Может ли кто-нибудь объяснить, как каждый из этих методов может быть полезен?

Ответы на вопрос(3)

Ваш ответ на вопрос