Описание тега nodatime
Noda Time - это альтернативный API даты и времени для.NET. Это помогает вам более ясно думать о ваших данных и более точно выражать операции с этими данными.
Он заимствует многие концепции из Joda Time, стандартной отраслевой библиотеки обработки даты и времени для Java. Это идиоматический порт, а не прямой перевод. Он был специально разработан для использования в.Net Framework.
Существует множество причин использовать Noda Time вместо обычных типов даты и времени BCL, в том числе:
Поддержка часовых поясов IANA/Olson, таких как
America/New_York
.Четкое представление различных концепций: вместо использования
DateTime
для представления всего существуют разные типы дат, времени, значений с часовыми поясами, значений только с смещением UTC и т. д.Снижение неожиданности: все типы Noda Time работают стабильно и предсказуемо. Напротив,
DateTime
тип имеет разное поведение в зависимости отKind
свойство. Чтобы узнать о типах неожиданностей, которых можно избежать, прочтите "Что не так с DateTime?"Возможность тестирования: вы можете легко смоделировать системные часы, используя
IClock
интерфейс, и вам придется изо всех сил, если вы хотите, чтобы на вас влиял местный часовой пояс компьютера. Напротив,DateTime.Now
сложно имитировать, и по умолчанию он привязан к системному часовому поясу.
Noda Time также имеет возможность работать с часовыми поясами Windows и может конвертировать между ними. Он также содержит данные zone.tab, которые можно использовать для сопоставления часовых поясов с кодом страны или определения часовых поясов на карте.
Ресурсы:
Основным автором Noda Time является Jon Skeet, известный по stackru.
См. Также: jodatime