Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 2082|Отговор: 0

[Източник] Разликата между DateTime и DateTimeOffset в .NET/C#

[Копирай линк]
Публикувано в 6.06.2024 г. 10:05:15 ч. | | |
DateTime и DateTimeOffset са два типа дати и час в .NET рамката.

DateTime:D ateTime е структура, която представя датата и часа. Той съдържа информация като година, месец, ден, час, минута, секунда и милисекунда. Стойността на типа DateTime се базира на местната часова зона, т.е. тя представлява датата и часа спрямо местната часова зона. Типът DateTime е подходящ за ситуации, в които не е необходимо да се вземат предвид часови зони, като например записване на времето, когато е настъпило събитието.

ДатаВремеОфсет:D ateTimeOffset също е структура, която представя дати и часове. Освен че съдържа информация като година, месец, ден, час, минута, секунда и милисекунди, той съдържа и отместване, което представлява отклонението спрямо координираното универсално време (UTC). Типът DateTimeOffset е подходящ за сценарии, в които трябва да се вземат предвид часовите зони, като изчисляване на време и съхранение между часовите зони.

Различавам:

  • Стойността на типа DateTime се базира на локалната часова зона, докато стойността на типа DateTimeOffset се базира на UTC и offset.
  • Типът DateTime не представя точно времето между часовите зони, докато типът DateTimeOffset може точно да представя времето между часовите зони.
  • Типът DateTime може да бъде повлиян от промени в местната часова зона при извършване на времеви изчисления, докато типът DateTimeOffset не се влияе от промените в местната часова зона.


В практическите приложения изберете дали да използвате DateTime или DateTimeOffset според конкретните нужди. Ако трябва да обмислите часови зони, особено изчисляване и съхранение на време между различни зони, се препоръчва тип DateTimeOffset.

Източник DateTime:Входът към хиперлинк е видим.
ДатаВремеОфсет Референция:Входът към хиперлинк е видим.





Предишен:ASP.NET Core 8 използва IExceptionHandler за глобална обработка на изключения
Следващ:.NET/C# за получаване на началните и крайните часове на деня
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com