Была ли эта страница полезной?
Ваш отзыв об этом контенте важен для нас. Расскажите нам о том, что вы думаете.
Дополнительный отзыв?
1500 символов осталось
Экспорт (0) Печать
Развернуть все
Данная статья переведена автоматически. Наведите указатель мыши на предложения статьи, чтобы просмотреть исходный текст. Дополнительные сведения.
Перевод
Текст оригинала

DateTime - структура

Представляет текущее время, обычно выраженное как дата и время суток.

Чтобы просмотреть исходный код платформы .NET Framework для этого типа см. в разделе Источник ссылки.

Пространство имен:  System
Сборка:  mscorlib (в mscorlib.dll)

[SerializableAttribute]
public struct DateTime : IComparable, IFormattable, 
	IConvertible, ISerializable, IComparable<DateTime>, IEquatable<DateTime>

Тип DateTime предоставляет следующие члены.

  ИмяОписание
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsDateTime(Int64)Инициализирует новый экземпляр структуры DateTime заданным числом тактов.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsDateTime(Int64, DateTimeKind)Инициализирует новый экземпляр структуры DateTime заданным числом тактов и временем UTC или местным временем.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsDateTime(Int32, Int32, Int32) Инициализирует новый экземпляр структуры DateTime заданными значениями года, месяца и дня.
Открытый методПоддерживается платформой XNA FrameworkDateTime(Int32, Int32, Int32, Calendar) Инициализирует новый экземпляр структуры DateTime заданными значениями года, месяца и дня для заданного календаря.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsDateTime(Int32, Int32, Int32, Int32, Int32, Int32)Инициализирует новый экземпляр структуры DateTime заданным годом, месяцем, днем, часом, минутой и секундой.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsDateTime(Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind)Инициализирует новый экземпляр структуры DateTime заданными значениями года, месяца, дня, часа, минуты и секунды, а также временем UTC или местным временем.
Открытый методПоддерживается платформой XNA FrameworkDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Calendar)Инициализирует новый экземпляр структуры DateTime указанным годом, месяцем, днем, часом, минутой и секундой для заданного календаря.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32)Инициализирует новый экземпляр структуры DateTime заданным годом, месяцем, днем, часом, минутой, секундой и миллисекундой.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, DateTimeKind)Инициализирует новый экземпляр структуры DateTime заданными значениями года, месяца, дня, часа, минуты, секунды и миллисекунды, а также временем UTC или местным временем.
Открытый методПоддерживается платформой XNA FrameworkDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar)Инициализирует новый экземпляр структуры DateTime указанным годом, месяцем, днем, часом, минутой, секундой и миллисекундой для заданного календаря.
Открытый методПоддерживается платформой XNA FrameworkDateTime(Int32, Int32, Int32, Int32, Int32, Int32, Int32, Calendar, DateTimeKind)Инициализирует новый экземпляр структуры DateTime заданными значениями года, месяца, дня, часа, минуты, секунды и миллисекунды, а также временем UTC или местным временем для заданного календаря.
В начало страницы

  ИмяОписание
Открытое свойствоПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsDateВозвращает компоненту даты этого экземпляра.
Открытое свойствоПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsDayВозвращает день месяца, представленный этим экземпляром.
Открытое свойствоПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsDayOfWeekВозвращает день недели, представленный этим экземпляром.
Открытое свойствоПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsDayOfYearВозвращает день года, представленный этим экземпляром.
Открытое свойствоПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsHour Возвращает часовую часть для даты, представленной этим экземпляром.
Открытое свойствоПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsKindВозвращает значение, указывающее, на каком времени основано время, представленное этим экземпляром: местном, UTC или ни на том, ни на другом.
Открытое свойствоПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsMillisecondВозвращает компонент миллисекунд для даты, представленной в данном экземпляре.
Открытое свойствоПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsMinute Возвращает значение минут для даты, представленной этим экземпляром.
Открытое свойствоПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsMonth Возвращает значение месяца для даты, представленной этим экземпляром.
Открытое свойствоСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsNowПолучает объект DateTime, которому присвоены текущие дата и время данного компьютера, выраженные как местное время.
Открытое свойствоПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsSecondВозвращает компонент секунды даты, представленной этим экземпляром.
Открытое свойствоПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsTicksВозвращает число тактов, которое представляет дату и время этого экземпляра.
Открытое свойствоПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsTimeOfDayВозвращает время дня для этого экземпляра.
Открытое свойствоСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsTodayВозвращает текущую дату.
Открытое свойствоСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsUtcNowПолучает объект DateTime, которому присвоены текущие дата и время данного компьютера, выраженные как время UTC.
Открытое свойствоПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsYearВозвращает компонент года даты, представленной этим экземпляром.
В начало страницы

  ИмяОписание
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsAddВозвращает новый объект DateTime, добавляющий значение заданного объекта TimeSpan к значению данного экземпляра.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsAddDaysВозвращает новый объект DateTime, добавляющий заданное число дней к значению данного экземпляра.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsAddHoursВозвращает новый объект DateTime, добавляющий заданное число часов к значению данного экземпляра.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsAddMillisecondsВозвращает новый объект DateTime, добавляющий заданное число миллисекунд к значению данного экземпляра.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsAddMinutesВозвращает новый объект DateTime, добавляющий заданное число минут к значению данного экземпляра.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsAddMonthsВозвращает новый объект DateTime, добавляющий заданное число месяцев к значению данного экземпляра.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsAddSecondsВозвращает новый объект DateTime, добавляющий заданное число секунд к значению данного экземпляра.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsAddTicksВозвращает новый объект DateTime, добавляющий заданное число тактов к значению данного экземпляра.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsAddYearsВозвращает новый объект DateTime, добавляющий заданное число лет к значению данного экземпляра.
Открытый методСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsCompareСравнивает два экземпляра объекта DateTime и возвращает целое число, которое показывает, предшествует ли первый экземпляр второму, совпадает или расположен позже.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsCompareTo(DateTime)Сравнивает значение данного экземпляра с заданным значением DateTime и возвращает целочисленное значение, указывающее, когда наступает момент, заданный в данном экземпляре: раньше, позже или одновременно с моментом, заданным значением DateTime.
Открытый методПоддерживается платформой XNA FrameworkCompareTo(Object)Сравнивает значение данного экземпляра с заданным объектом, содержащим заданное значение DateTime, и возвращает целочисленное значение, указывающее, когда наступает момент, заданный в данном экземпляре: раньше, позже или одновременно с моментом, заданным значением DateTime.
Открытый методСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsDaysInMonthВозвращает число дней в указанном месяце указанного года.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsEquals(DateTime)Возвращает значение, указывающее, равно ли значение данного экземпляра значению заданного экземпляра DateTime.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsEquals(Object)Возвращает значение, показывающее, равен ли данный экземпляр заданному объекту. (Переопределяет ValueType.Equals(Object).)
Открытый методСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsEquals(DateTime, DateTime)Возвращает значение, указывающее, содержат ли два экземпляра DateTime одно и то же значение даты и времени.
Открытый методСтатический членПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsFromBinaryДесериализует 64-битовое значение и воссоздает исходный сериализованный объект DateTime.
Открытый методСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsFromFileTimeПреобразует заданную временную характеристику файла Windows в ее эквивалент по местному времени.
Открытый методСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsFromFileTimeUtcПреобразует заданную временную характеристику файла Windows в ее UTC-эквивалент.
Открытый методСтатический членПоддерживается платформой XNA FrameworkFromOADateВозвращает объект DateTime, эквивалентный заданному значению даты OLE-автоматизации.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsGetDateTimeFormats()Преобразует значение этого экземпляра во все строковые представления, поддерживаемые стандартным форматом даты и времени.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsGetDateTimeFormats(Char)Преобразует значение этого экземпляра во все строковые представления, поддерживаемые указанным стандартным спецификатором формата даты и времени.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsGetDateTimeFormats(IFormatProvider)Преобразует значение этого экземпляра во все строковые представления, поддерживаемые стандартными спецификаторами формата даты и времени и указанными сведениями о форматировании, связанными с языком и региональными параметрами.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsGetDateTimeFormats(Char, IFormatProvider)Преобразует значение этого экземпляра во все строковые представления, поддерживаемые указанным стандартным спецификатором формата даты и времени и сведениями о форматировании, связанными с языком и региональными параметрами.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsGetHashCode Возвращает хэш-код для текущего экземпляра. (Переопределяет ValueType.GetHashCode().)
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsGetType Возвращает объект класса Type для текущего экземпляра. (Унаследовано от Object.)
Открытый методПоддерживается платформой XNA FrameworkGetTypeCodeВозвращает TypeCode для типа значения DateTime.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsIsDaylightSavingTimeУказывает, попадает ли данный экземпляр объекта DateTime в диапазон летнего времени для текущего часового пояса.
Открытый методСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsIsLeapYearВозвращает сведения о том, является ли указанный год високосным.
Открытый методСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsParse(String)Преобразует строковое представление даты и времени в его эквивалент DateTime.
Открытый методСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsParse(String, IFormatProvider)Преобразует заданное строковое представление даты и времени в его эквивалент DateTime, используя сведения о форматировании, связанные с языком и региональными параметрами.
Открытый методСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsParse(String, IFormatProvider, DateTimeStyles)Преобразует заданное строковое представление даты и времени в его эквивалент DateTime, используя указанные сведения о форматировании, связанные с языком и региональными параметрами, а также стиль.
Открытый методСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsParseExact(String, String, IFormatProvider)Преобразует заданное строковое представление даты и времени в его эквивалент DateTime, используя указанные сведения о форматировании, связанные с языком и региональными параметрами. Формат строкового представления должен полностью соответствовать заданному формату.
Открытый методСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsParseExact(String, String, IFormatProvider, DateTimeStyles)Преобразует заданное строковое представление даты и времени в его эквивалент DateTime, используя заданный формат, указанные сведения о форматировании, связанные с языком и региональными параметрами, а также стиль. Формат строкового представления должен полностью соответствовать заданному формату. В противном случае возникает исключение.
Открытый методСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsParseExact(String, String[], IFormatProvider, DateTimeStyles)Преобразует заданное строковое представление даты и времени в его эквивалент DateTime, используя заданный массив форматов, указанные сведения о форматировании, связанные с языком и региональными параметрами, и стиль форматирования. Формат строкового представления должен полностью соответствовать по крайней мере одному из заданных форматов. В противном случае возникает исключение.
Открытый методСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsSpecifyKindСоздает новый объект DateTime, имеющий то же количество тактов, что и заданный объект DateTime, но предназначенный для использования либо с местным временем, стандартом UTC, либо ни тем, ни другим, как задано значением DateTimeKind.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsSubtract(DateTime)Вычитает из этого экземпляра указанную дату и время.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsSubtract(TimeSpan)Вычитает из этого экземпляра указанную длительность.
Открытый методПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsToBinaryСериализует текущий объект DateTime в 64-битовое двоичное значение, которое может использоваться в дальнейшем для воссоздания объекта DateTime.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsToFileTimeПреобразует значение текущего объекта DateTime во временную характеристику файла Windows.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsToFileTimeUtcПреобразует значение текущего объекта DateTime во временную характеристику файла Windows.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsToLocalTimeПреобразует значение текущего объекта DateTime в местное время.
Открытый методПоддерживается платформой XNA FrameworkToLongDateStringПреобразует значение текущего объекта DateTime в эквивалентное ему длинное строковое представление даты.
Открытый методПоддерживается платформой XNA FrameworkToLongTimeStringПреобразует значение текущего объекта DateTime в эквивалентное ему длинное строковое представление времени.
Открытый методПоддерживается платформой XNA FrameworkToOADateПреобразует числовое значение этого экземпляра в эквивалентное ему значение даты OLE-автоматизации.
Открытый методПоддерживается платформой XNA FrameworkToShortDateStringПреобразует значение текущего объекта DateTime в эквивалентное ему короткое строковое представление даты.
Открытый методПоддерживается платформой XNA FrameworkToShortTimeStringПреобразует значение текущего объекта DateTime в эквивалентное ему короткое строковое представление времени.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsToString()Преобразует значение текущего объекта DateTime в эквивалентное ему строковое представление. (Переопределяет ValueType.ToString().)
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsToString(IFormatProvider)Преобразует значение текущего объекта DateTime в эквивалентное ему строковое представление с использованием указанных сведений о форматировании, связанных с языком и региональными параметрами.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsToString(String)Преобразует значение текущего объекта DateTime в эквивалентное ему строковое представление с использованием заданного формата.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsToString(String, IFormatProvider)Преобразует значение текущего объекта DateTime в эквивалентное ему строковое представление с использованием указанного формата и сведений об особенностях формата для данного языка и региональных параметров.
Открытый методПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsToUniversalTimeПреобразует значение текущего объекта DateTime во время UTC.
Открытый методСтатический членПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsTryParse(String, DateTime)Преобразовывает указанное строковое представление даты и времени в его эквивалент DateTime и возвращает значение, позволяющее определить успешность преобразования.
Открытый методСтатический членПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsTryParse(String, IFormatProvider, DateTimeStyles, DateTime)Преобразует заданное строковое представление даты и времени в его эквивалент DateTime, используя указанную информацию о форматировании, связанную с языком и региональными параметрами, и возвращает значение, которое показывает успешность преобразования.
Открытый методСтатический членПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsTryParseExact(String, String, IFormatProvider, DateTimeStyles, DateTime)Преобразует заданное строковое представление даты и времени в его эквивалент DateTime, используя заданный формат, указанные сведения о форматировании, связанные с языком и региональными параметрами, а также стиль. Формат строкового представления должен полностью соответствовать заданному формату. Метод возвращает значение, указывающее, успешно ли выполнено преобразование.
Открытый методСтатический членПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsTryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTime)Преобразует заданное строковое представление даты и времени в его эквивалент DateTime, используя заданный массив форматов, указанные сведения о форматировании, связанные с языком и региональными параметрами, и стиль форматирования. Формат представления строки должен полностью соответствовать хотя бы одному заданному формату. Метод возвращает значение, указывающее, успешно ли выполнено преобразование.
В начало страницы

  ИмяОписание
Открытый операторСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsAdditionПрибавляет указанный временной интервал к заданной дате и времени, возвращая новую дату и время.
Открытый операторСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsEqualityОпределяет, равны ли два заданных экземпляра класса DateTime.
Открытый операторСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsGreaterThanОпределяет, является ли значение одного заданного объекта DateTime позже другого заданного объекта DateTime.
Открытый операторСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsGreaterThanOrEqualОпределяет, представляет ли один заданный DateTime дату и время, которое такое же или позже, чем другое заданное DateTime.
Открытый операторСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsInequalityОпределяет, являются ли два заданных экземпляра класса DateTime неравными.
Открытый операторСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsLessThanОпределяет, является ли значение одного заданного объекта DateTime раньшим, чем значение другого заданного объекта DateTime.
Открытый операторСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsLessThanOrEqualОпределяет, представляет ли один заданный DateTime дату и время, которое такое же или раньше, чем другое заданное DateTime.
Открытый операторСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsSubtraction(DateTime, DateTime)Вычитает указанную дату и время из другой указанной даты и времени и возвращает временной интервал.
Открытый операторСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsSubtraction(DateTime, TimeSpan)Вычитает заданный временной интервал из указанной даты и времени и возвращает новую дату и время.
В начало страницы

  ИмяОписание
Открытое полеСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsMaxValueПредставляет наибольшее возможное значение типа DateTime. Это поле доступно только для чтения.
Открытое полеСтатический членПоддерживается платформой XNA FrameworkПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsMinValueПредставляет минимально допустимое значение типа DateTime. Это поле доступно только для чтения.
В начало страницы

  ИмяОписание
Явная реализация интерфейсаЗакрытый методПоддерживается в Переносимая библиотека классовПоддерживается в версии: Приложения .NET для Магазина WindowsIComparable.CompareToСравнивает текущий экземпляр с другим объектом того же типа и возвращает целое число, которое показывает, расположен ли данный экземпляр перед, после или на той же позиции в порядке сортировки, что и другой объект.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToBooleanИнфраструктура. Данное преобразование не поддерживается. При попытке использовать этот метод выбрасывается исключение InvalidCastException.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToByteИнфраструктура. Данное преобразование не поддерживается. При попытке использовать этот метод выбрасывается исключение InvalidCastException.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToCharИнфраструктура. Данное преобразование не поддерживается. При попытке использовать этот метод выбрасывается исключение InvalidCastException.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToDateTimeИнфраструктура. Возвращает текущий объект DateTime.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToDecimalИнфраструктура. Данное преобразование не поддерживается. При попытке использовать этот метод выбрасывается исключение InvalidCastException.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToDoubleИнфраструктура. Данное преобразование не поддерживается. При попытке использовать этот метод выбрасывается исключение InvalidCastException.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToInt16Инфраструктура. Данное преобразование не поддерживается. При попытке использовать этот метод выбрасывается исключение InvalidCastException.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToInt32Инфраструктура. Данное преобразование не поддерживается. При попытке использовать этот метод выбрасывается исключение InvalidCastException.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToInt64Инфраструктура. Данное преобразование не поддерживается. При попытке использовать этот метод выбрасывается исключение InvalidCastException.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToSByteИнфраструктура. Данное преобразование не поддерживается. При попытке использовать этот метод выбрасывается исключение InvalidCastException.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToSingleИнфраструктура. Данное преобразование не поддерживается. При попытке использовать этот метод выбрасывается исключение InvalidCastException.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToTypeИнфраструктура. Преобразует текущий объект DateTime в объект заданного типа.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToUInt16Инфраструктура. Данное преобразование не поддерживается. При попытке использовать этот метод выбрасывается исключение InvalidCastException.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToUInt32Инфраструктура. Данное преобразование не поддерживается. При попытке использовать этот метод выбрасывается исключение InvalidCastException.
Явная реализация интерфейсаЗакрытый методПоддерживается платформой XNA FrameworkIConvertible.ToUInt64Инфраструктура. Данное преобразование не поддерживается. При попытке использовать этот метод выбрасывается исключение InvalidCastException.
Явная реализация интерфейсаЗакрытый методISerializable.GetObjectDataЗаполняет объект SerializationInfo данными, необходимыми для сериализации текущего объекта DateTime.
В начало страницы

Чтобы просмотреть исходный код платформы .NET Framework для этого типа см. в разделе Источник ссылки. Можно просматривать с помощью исходный код в сети, загрузил ссылку для просмотра вне сети и пошагово выполняет источники (включая заплаты и обновления) во время отладки. в разделе инструкции.

Тип значения DateTime представляет со значениями даты и времени — от 00:00: 00 (полуночь), 1-е,1 января Анно Домини (общая эра) до 11:59: КРУГЛОСУТОЧНО 31-е декабря 9999., 59 лет нашей эры. (C). .E григорианского календаря.

Значения времени измеряются в 100-наносекундных единицах, называемых тактами, и точная дата представляется числом тактов с 00:00 1 января 0001 года н. э. (н. э.) в календаре GregorianCalendar (за исключением тактов, добавленных корректировочными секундами). Например, значение тактов, равное 31241376000000000L, представляет пятницу 1 января 0100 года 00:00:00. Значение DateTime всегда выражается в контексте явно определенного или заданного по умолчанию календаря.

ПримечаниеПримечание

При работе со значением тактов, которое необходимо преобразовать в какой-либо другой интервал времени (например, минуты или секунды), следует использовать константу TimeSpan.TicksPerDay, TimeSpan.TicksPerHour, TimeSpan.TicksPerMinute, TimeSpan.TicksPerSecond или TimeSpan.TicksPerMillisecond, чтобы выполнить преобразование. Например, чтобы добавить несколько секунд, представленные заданным числом тактов, компоненту Second со значением DateTime, можно использовать выражение dateValue.Second + nTicks/Timespan.TicksPerSecond.

В данном разделе:

Создайте объект DateTime
Значения DateTime и их строковые представления
Преобразования строк в значения DateTime
Вопросы версии
Значения DateTime
Операции DateTime
DateTime или TimeSpan
Вопросы com-взаимодействия

Создайте объект DateTime

Можно создать новое значение DateTime, используя один из следующих способов:

  • Путем вызова любой из перегруженных версий конструктора DateTime, которые позволяют указать определенные элементы значения даты и времени (например, год, месяц, день или количество интервалов). В следующей инструкции показан вызов одного из конструкторов DateTime для создания даты с определенными годом, месяцем, днем, часом, минутой и секундой.

    
    DateTime date1 = new DateTime(2008, 5, 1, 8, 30, 52);
    
    
    
  • Используя любой синтаксис компилятора для объявления значений даты и времени. Например, следующая инструкция Visual Basic инициализирует новое значение DateTime.

    
    Dim date1 As Date = #5/1/2008 8:30:52AM#
    
    
    
  • Назначив для объекта DateTime значение даты и времени, которое возвращается свойством или методом. В следующем примере трем новым переменным DateTime присваивается текущая дата и время, текущая дата и всемирное время (UTC) и текущая дата.

    
    DateTime date1 = DateTime.Now;
    DateTime date2 = DateTime.UtcNow;
    DateTime date3 = DateTime.Today;
    
    
    
  • Путем анализа строкового представления значения даты и времени. Все методы ( Parse, ParseExact, TryParse, TryParseExact) преобразовывают строку в аналогичное значение даты и времени. В следующем примере метод Parse используется для анализа строки и ее преобразования в значение DateTime.

    
    string dateString = "5/1/2008 8:30:52 AM";
    DateTime date1 = DateTime.Parse(dateString, 
                              System.Globalization.CultureInfo.InvariantCulture); 
    
    
    

    Обратите внимание, что методы TryParse и TryParseExact указывают содержит ли конкретная строка допустимое представление значения DateTime в дополнение к выполнению преобразования.

  • Путем вызова неявного конструктора по умолчанию структуры DateTime. (Дополнительные сведения о неявном конструкторе по умолчанию типа значения см. в разделе Типы значений (Справочник по C#).) Приблизительный аналог, который поддерживается компиляторами, — объявить значение DateTime без явного присвоения даты и времени. В следующем примере показан вызов неявного конструктора по умолчанию DateTime в языках C# и Visual Basic, а также объявление переменной DateTime без назначения в Visual Basic.

    
    DateTime dat1 = new DateTime();
    // The following method call displays 1/1/0001 12:00:00 AM.
    Console.WriteLine(dat1.ToString(System.Globalization.CultureInfo.InvariantCulture));
    // The following method call displays True.
    Console.WriteLine(dat1.Equals(DateTime.MinValue));
    
    
    

Значения DateTime и их строковые представления

Для внутренних целей, все значения DateTime представляются как количество тактов (количество 100-наносекундных интервалов), закончившихся в 12:00:00 1 января 0001 г. Фактическое значение DateTime не зависит от способа появления этого значения, при отображении в элементе пользовательского интерфейса или при записывании в файл. Внешний вид значения DateTime — это результат операции форматирования. Форматирование — это процесс преобразования значения в его строковое представление.

Так как внешний вид значений даты и времени зависит от таких факторов, как язык и региональные параметры, международные стандарты, программные требования и личные предпочтения, структура DateTime обеспечивает большую гибкость при форматировании значений даты и времени с помощью перегруженных версий метода ToString. Метод DateTime.ToString() по умолчанию возвращает строковое представление значений даты и времени, используя формат краткой записи даты и длинной записи времени, предусмотренный в языке и региональных параметрах. В следующем примере используется метод DateTime.ToString() по умолчанию, чтобы отобразить дату и время, используя краткий формат даты и длинный формат времени для языка и региональных параметров en-US, которые являются текущими региональными параметрами на компьютере, где выполняется пример.


DateTime date1 = new DateTime(2008, 3, 1, 7, 0, 0);
Console.WriteLine(date1.ToString());
// For en-US culture, displays 3/1/2008 7:00:00 AM


Метод DateTime.ToString(IFormatProvider) возвращает строковое представление значения даты и времени, используя краткий формат даты и длинный формат времени определенного языка и региональных параметров. В следующем примере используется метод DateTime.ToString(IFormatProvider), чтобы отобразить дату и время, используя краткий формат даты и длинный формат времени для языка и региональных параметров fr-FR.


DateTime date1 = new DateTime(2008, 3, 1, 7, 0, 0);
Console.WriteLine(date1.ToString(System.Globalization.CultureInfo.CreateSpecificCulture("fr-FR")));
// Displays 01/03/2008 07:00:00


Метод DateTime.ToString(String) возвращает строковое представление даты и времени в формате, который определяется стандартным или настраиваемым описателем формата; при этом используются правила форматирования, которые зависят от текущих региональных параметров и языка. В следующем примере используется метод DateTime.ToString(String), чтобы отобразить полный формат даты и времени для языка и региональных параметров en-US, которые являются текущими региональными параметрами на компьютере, где выполняется пример.


DateTime date1 = new DateTime(2008, 3, 1, 7, 0, 0);
Console.WriteLine(date1.ToString("F"));
// Displays Saturday, March 01, 2008 7:00:00 AM


Метод DateTime.ToString(String, IFormatProvider) возвращает строковое представление даты и времени в формате, который определяется определенным описателем формата; при этом используются правила форматирования, которые зависят от заданных региональных параметров и языка. В следующем примере используется метод DateTime.ToString(String, IFormatProvider), чтобы отобразить дату и время в полном формате для языка и региональных параметров fr-FR.


DateTime date1 = new DateTime(2008, 3, 1, 7, 0, 0);
Console.WriteLine(date1.ToString("F", new System.Globalization.CultureInfo("fr-FR")));
// Displays samedi 1 mars 2008 07:00:00


Дополнительные сведения о заданной значения DateTime см. в разделах Стандартное Date и Time строки формата и Custom Date и Time строки формата.

Преобразования строк в значения DateTime

Анализ включает преобразовать строковое представление даты и времени в DateTime значение. Обычно строки даты и времени имеют 2 использования в различных приложениях.

  • Они представляют дату и время, которое может принимать различные формы, отражает соглашения или текущего или конкретного языка. Например, приложение может разрешить пользователю язык которого текущий en-us ввел значение даты как «12/15/2013 " или «15-е декабря 2013», и разрешить пользователю язык которого текущий " ГБ для ввода значения даты как «15/12/2013 " или «15-е декабря 2013».

  • Они представляют дату и время в предопределенном формате. Например, приложение может сериализовать дату как «20130103» независимо от языка, на котором выполняется приложение, или он может требовать, чтобы введите дату в формате короткой даты текущего языка и региональных параметров.

Можно использовать метод Parse или TryParse преобразовать строку, которая может отражать один из стандартных форматов даты и времени, используемых языком в DateTime значение. В следующем примере показано, как можно использовать TryParse преобразования строк даты в нескольких различных форматов для конкретных языков и региональных параметров в DateTime значение. Изменяет текущий язык на английский язык (Великобритании) и вызвать метод GetDateTimeFormats() для создания массива строк даты и времени. Затем он передает каждый элемент массива методу TryParse. Показывает вывод, что метод анализа может успешно преобразовать каждую из строк даты и времени для конкретных языков и региональных параметров.

Можно использовать методы TryParse и TryParseExact преобразования строки даты и времени, которая должна соответствовать конкретному формату или форматам в DateTime значение. Укажите необходимый формат или форматы в качестве параметра в метод анализа с помощью одного или нескольких стандартный или настраиваемый формате даты и времени строки. В следующем примере используется метод TryParseExact(String, String[], IFormatProvider, DateTimeStyles, DateTime) для преобразования строки, которые должны располагаться либо в формате «yyyyMMdd» или» формат «HHmmss значения DateTime.

Методы Parse и ParseExact вызывает исключение, если строка, в который выполняется преобразование DateTime значения не могут быть преобразованы. Методы TryParse и TryParseExact возвращает логическое значение, которое указывает, является ли не удалось успешно выполнено преобразование или. Поскольку операция синтаксического анализа для строки даты и времени, особенно если строки введенных конечными пользователями, то эти отличаться интенсивность отказов, поскольку является много ресурсов обработки исключений, необходимо использовать TryParse или методы TryParseExact в сценариях, где важна производительность или преобразования и высоким процентом сбоев.

Дополнительные сведения о анализа значений даты и времени см. в разделе Синтаксический анализ строки даты и времени.

Вопросы версии

До версии 2.0 платформы .NET Framework структура DateTime содержала 64-битовое поле, состоящее из неиспользуемого 2-битового поля, сцепленного с закрытым полем Ticks — 62-битовым беззнаковым полем, содержащим число тактов, представляющее дату и время. Значение поля Ticks можно получить из свойства Ticks.

Начиная с версии 2.0 платформы .NET Framework структура DateTime содержит 64-битовое поле, состоящее из закрытого поля Kind, сцепленного с полем Ticks. Поле Kind является 2-битовым полем, указывающим, какое время представляет структура DateTime: местное, скоординированное всеобщее (UTC) или время в незаданном часовом поясе. Поле Kind используется при выполнении преобразования значения времени между часовыми поясами, но не для сравнения значений времени или выполнения над ними арифметических операций. Значение поля Kind можно получить из свойства Kind.

ПримечаниеПримечание

Альтернативной структуре DateTime при работе со значениями даты и времени в определенных часовых поясах является структура DateTimeOffset. В структуре DateTimeOffset хранится информация даты и времени в закрытом поле DateTime и количество минут, на которое эти дата и время отличаются значения UTC, хранящегося в закрытом поле Int16. Благодаря этому значение DateTimeOffset может отражать время в определенном часовом поясе, тогда как значение DateTime может однозначно представлять время UTC и время локального часового пояса. Сведения о том, когда следует использовать каждую из двух структур, DateTime и DateTimeOffset, при работе со значениями даты и времени, см в разделе Выбор между типами DateTime, DateTimeOffset и TimeZoneInfo.

Значения DateTime

Описания значений времени в типе DateTime часто выражаются с использованием стандарта всеобщего скоординированного времени (UTC) — это международное название среднего времени по Гринвичу (GMT). Всеобщее скоординированное время изменяется по нулевой долготе, в начале координат UTC. Дневное время к UTC неприменимо.

Местное время относится к определенному часовому поясу. Каждый часовой пояс имеет определенное смещение от начала координат UTC, измеряемое в часах. Кроме того, на местное время может влиять правило перехода на летнее время, согласно которому к длине дня прибавляется или из него вычитается один час. Соответственно, местное время вычисляется путем добавления смещения часового пояса ко времени UTC и коррекции на летнее время, если таковая необходима. Смещение часового пояса в начале координат UTC равно нулю.

Время UTC пригодно для вычисления, сравнения и хранения дат и времени в файлах. Местное время подходит для отображения в пользовательском интерфейсе настольных приложений. Приложения, в которых учитывается часовой пояс (как во многих веб-приложениях), должны также работать с другими часовыми поясами.

Если свойство Kind объекта DateTime имеет значение DateTimeKind.Unspecified, то не указано, какое время представляет значение времени: местное, UTC или в другом часовом поясе.

Операции DateTime

Вычисления с использованием структуры DateTime, такие как Add или Subtract, не изменяют значения этой структуры. Вместо этого такое вычисление возвращает новую структуру DateTime, значение которой является результатом вычисления.

В операциях преобразования между часовыми поясами (например, между временем UTC и местным или между двумя другими часовыми поясами) учитывается летнее время, а в арифметических операциях и операциях сравнения оно не учитывается.

Сама структура DateTime предоставляет ограниченную поддержку преобразования между часовыми поясами. Можно воспользоваться методом ToLocalTime для преобразования времени UTC в местное время или методом ToUniversalTime преобразования местного времени в UTC. Однако полный набор методов для преобразования между часовыми поясами имеется в классе TimeZoneInfo. С помощью этих методов можно преобразовать время из любого часового пояса мира во время в любом другом часовом поясе.

Вычисления и сравнения объектов DateTime являются значимыми только при условии, что эти объекты представляют время в одном и том же часовом поясе. Можно использовать объект TimeZoneInfo для представления часового пояса значения DateTime, хотя эти два значения тесно связаны. (То есть, объект DateTime не имеет свойства, возвращающего объект, представляющий часовой пояс этого значения даты и времени, отличного от свойства Kind.) Поэтому в приложениях, работающих с часовыми поясами, необходимо прибегать к какому-либо внешнему механизму для определения часового пояса, в котором создан объект DateTime. Например, можно использовать структуру, инкапсулирующую значение DateTime и объект TimeZoneInfo, представляющий часовой пояс значения DateTime. Дополнительные сведения об использовании всемирного времени (UTC) в вычислениях и сравнениях значений DateTime см. в разделе Выполнение арифметических операций с датами и временем.

Каждый член DateTime неявно использует григорианский календарь для выполнения своих операций, за исключением конструкторов, задающих календарь, и методов с параметром, производным от IFormatProvider, таких как System.Globalization.DateTimeFormatInfo, явно определяющих календарь.

В операциях, выполняемых членами типа DateTime, учитываются такие сведения, такие как високосный год или количество дней в месяце.

2 Других общих операции со значениями DateTime. преобразование даты и значения времени на или из строкового представления. Процесс преобразования DateTime значение в строковое представление операции форматирования. дополнительные сведения о форматировании см. в разделе Значения DateTime и их строковые представления. Процесс преобразовать строковое представление даты и времени в DateTime значение в ходе анализа; дополнительные сведения об анализе см. в разделе Преобразования строк в значения DateTime.

DateTime или TimeSpan

Типы значений DateTime и TimeSpan отличаются тем, что DateTime представляет момент времени, тогда как TimeSpan представляет интервал времени. Это означает, например, что можно вычесть один экземпляр DateTime из другого для получения объекта TimeSpan, который представляет собой временной интервал между ними. Или можно прибавить положительное значение TimeSpan к текущему значению DateTime, чтобы получить значение DateTime, которое представляет собой будущую дату.

Можно прибавлять и вычитать временные интервалы из объекта DateTime. Временные интервалы могут быть отрицательными или положительными и выражаться в единицах, таких как такты или секунды, или же могут быть выражены в виде объекта TimeSpan.

Вопросы com-взаимодействия

Передача значения DateTime COM-приложению, а затем обратно управляемому приложению, называется круговым путем. Однако значение DateTime, определяющее только время, не проходит круговой путь, как можно было бы предположить.

Если обратное преобразование только время, например 3 КРУГЛОСУТОЧНО., конечный дату и время 30-е декабря 1899 C .E КРУГЛОСУТОЧНО. в 3:00, то не C .E 1-е,1 января., 3:00 после полудня Так происходит, потому что платформа .NET Framework и модель COM предполагают дату по умолчанию, когда задано только время. Однако система модели COM принимает базисную дату 30-е декабря 1899 C .E. во время выполнения .NET Framework предполагает базисную дату 1-е,1 января C .E.

Когда от платформы .NET Framework в систему COM передается только время, выполняется специальная обработка, в ходе которой время преобразуется в формат, используемой в модели COM. Когда из COM в .NET Framework передается только время, специальная обработка не выполняется, поскольку это привело бы к повреждению легитимных значений даты и времени до 30 декабря 1899 г. включительно. Это также означает, что если круговой путь даты начинается с модели COM, платформа .NET Framework и COM сохраняют эту дату.

Поведение платформы .NET Framework и системы COM означает что если в приложении круговой путь проходит значение DateTime, содержащее только время, приложение должно обязательно изменить или проигнорировать ошибочные даты из результирующего объекта DateTime.

В следующем примере показано, как сравнивать приблизительно равные значения DateTime, допуская небольшую погрешность при объявлении их "равными".


using System;

class DateTimeTester 
{
   static bool RoughlyEquals(DateTime time, DateTime timeWithWindow, int windowInSeconds, int frequencyInSeconds)
   {
      long delta = (long)((TimeSpan)(timeWithWindow - time)).TotalSeconds 
                                                     % frequencyInSeconds;

      delta = delta > windowInSeconds ? frequencyInSeconds - delta : delta;

      return Math.Abs(delta) < windowInSeconds;
	}

	public static void Main() 
	{
      int window = 10;
      int freq = 60 * 60 * 2; // 2 hours;

      DateTime d1 = DateTime.Now;

      DateTime d2 = d1.AddSeconds(2 * window);
      DateTime d3 = d1.AddSeconds(-2 * window);
      DateTime d4 = d1.AddSeconds(window / 2);
      DateTime d5 = d1.AddSeconds(-window / 2);

      DateTime d6 = (d1.AddHours(2)).AddSeconds(2 * window);
      DateTime d7 = (d1.AddHours(2)).AddSeconds(-2 * window);
      DateTime d8 = (d1.AddHours(2)).AddSeconds(window / 2);
      DateTime d9 = (d1.AddHours(2)).AddSeconds(-window / 2);

      Console.WriteLine("d1 ({0}) ~= d1 ({1}): {2}",
                        d1, d1, RoughlyEquals(d1, d1, window, freq));
      Console.WriteLine("d1 ({0}) ~= d2 ({1}): {2}", 
                        d1, d2, RoughlyEquals(d1, d2, window, freq));
      Console.WriteLine("d1 ({0}) ~= d3 ({1}): {2}", 
                        d1, d3, RoughlyEquals(d1, d3, window, freq));
      Console.WriteLine("d1 ({0}) ~= d4 ({1}): {2}", 
                        d1, d4, RoughlyEquals(d1, d4, window, freq));
      Console.WriteLine("d1 ({0}) ~= d5 ({1}): {2}", 
                        d1, d5, RoughlyEquals(d1, d5, window, freq));

      Console.WriteLine("d1 ({0}) ~= d6 ({1}): {2}", 
                        d1, d6, RoughlyEquals(d1, d6, window, freq));
      Console.WriteLine("d1 ({0}) ~= d7 ({1}): {2}", 
                        d1, d7, RoughlyEquals(d1, d7, window, freq));
      Console.WriteLine("d1 ({0}) ~= d8 ({1}): {2}", 
                        d1, d8, RoughlyEquals(d1, d8, window, freq));
      Console.WriteLine("d1 ({0}) ~= d9 ({1}): {2}", 
                        d1, d9, RoughlyEquals(d1, d9, window, freq));
	}
}
// The example displays output similar to the following:
//    d1 (1/28/2010 9:01:26 PM) ~= d1 (1/28/2010 9:01:26 PM): True
//    d1 (1/28/2010 9:01:26 PM) ~= d2 (1/28/2010 9:01:46 PM): False
//    d1 (1/28/2010 9:01:26 PM) ~= d3 (1/28/2010 9:01:06 PM): False
//    d1 (1/28/2010 9:01:26 PM) ~= d4 (1/28/2010 9:01:31 PM): True
//    d1 (1/28/2010 9:01:26 PM) ~= d5 (1/28/2010 9:01:21 PM): True
//    d1 (1/28/2010 9:01:26 PM) ~= d6 (1/28/2010 11:01:46 PM): False
//    d1 (1/28/2010 9:01:26 PM) ~= d7 (1/28/2010 11:01:06 PM): False
//    d1 (1/28/2010 9:01:26 PM) ~= d8 (1/28/2010 11:01:31 PM): True
//    d1 (1/28/2010 9:01:26 PM) ~= d9 (1/28/2010 11:01:21 PM): True


.NET Framework

Поддерживается в версиях: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework (клиентский профиль)

Поддерживается в версиях: 4, 3.5 с пакетом обновления 1 (SP1)

Переносимая библиотека классов

Поддерживается в версии: Переносимая библиотека классов

Приложения .NET для Магазина Windows

Поддерживается в версии: Windows 8

Приложения .NET для Windows Phone

Поддерживается в версиях: Windows Phone 8, Silverlight 8.1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista с пакетом обновления 2 (SP2), Windows Server 2008 (роль основных серверных компонентов не поддерживается), Windows Server 2008 R2 (роль основных серверных компонентов поддерживается в пакете обновления 1 (SP1) или выше; системы на базе Itanium не поддерживаются)

.NET Framework поддерживает не все версии каждой платформы. Поддерживаемые версии перечислены в разделе Требования к системе для .NET Framework.

Все члены этого типа являются потокобезопасными. Члены, которые должны менять состояние экземпляра, в действительности возвращают новый экземпляр, инициализированный новым значением. Как и в случае с любыми другими типами, операции чтения и записи общей переменной, содержащей экземпляр данного типа, следует защищать блокировкой, чтобы гарантировать потокобезопасность.

Предупреждающее замечаниеВнимание

Присвоение экземпляра данного типа не является потокобезопасным ни для одной аппаратной платформы, поскольку двоичное представление экземпляра может оказаться слишком большим для присвоения его в рамках одной атомарной операции.

Добавления сообщества

ДОБАВИТЬ
Показ:
© 2015 Microsoft