DateTimeOffset.LocalDateTime Propriedade
Definição
Obtém um valor DateTime que representa a data e hora locais do objeto DateTimeOffset atual.Gets a DateTime value that represents the local date and time of the current DateTimeOffset object.
public:
property DateTime LocalDateTime { DateTime get(); };
public DateTime LocalDateTime { get; }
member this.LocalDateTime : DateTime
Public ReadOnly Property LocalDateTime As DateTime
Valor da propriedade
A data e hora locais do objeto DateTimeOffset atual.The local date and time of the current DateTimeOffset object.
Exemplos
O exemplo a seguir ilustra várias conversões de DateTimeOffset valores para horas locais no fuso horário padrão do Pacífico americano.The following example illustrates several conversions of DateTimeOffset values to local times in the U.S. Pacific Standard Time zone. Observe que as três últimas horas são todas ambíguas; a propriedade mapeia todas elas para uma única data e hora no fuso horário padrão do Pacífico.Note that the last three times are all ambiguous; the property maps all of them to a single date and time in the Pacific Standard Time zone.
DateTimeOffset dto;
// Current time
dto = DateTimeOffset.Now;
Console.WriteLine(dto.LocalDateTime);
// UTC time
dto = DateTimeOffset.UtcNow;
Console.WriteLine(dto.LocalDateTime);
// Transition to DST in local time zone occurs on 3/11/2007 at 2:00 AM
dto = new DateTimeOffset(2007, 3, 11, 3, 30, 0, new TimeSpan(-7, 0, 0));
Console.WriteLine(dto.LocalDateTime);
dto = new DateTimeOffset(2007, 3, 11, 2, 30, 0, new TimeSpan(-7, 0, 0));
Console.WriteLine(dto.LocalDateTime);
// Invalid time in local time zone
dto = new DateTimeOffset(2007, 3, 11, 2, 30, 0, new TimeSpan(-8, 0, 0));
Console.WriteLine(TimeZoneInfo.Local.IsInvalidTime(dto.DateTime));
Console.WriteLine(dto.LocalDateTime);
// Transition from DST in local time zone occurs on 11/4/07 at 2:00 AM
// This is an ambiguous time
dto = new DateTimeOffset(2007, 11, 4, 1, 30, 0, new TimeSpan(-7, 0, 0));
Console.WriteLine(TimeZoneInfo.Local.IsAmbiguousTime(dto));
Console.WriteLine(dto.LocalDateTime);
dto = new DateTimeOffset(2007, 11, 4, 2, 30, 0, new TimeSpan(-7, 0, 0));
Console.WriteLine(TimeZoneInfo.Local.IsAmbiguousTime(dto));
Console.WriteLine(dto.LocalDateTime);
// This is also an ambiguous time
dto = new DateTimeOffset(2007, 11, 4, 1, 30, 0, new TimeSpan(-8, 0, 0));
Console.WriteLine(TimeZoneInfo.Local.IsAmbiguousTime(dto));
Console.WriteLine(dto.LocalDateTime);
// If run on 3/8/2007 at 4:56 PM, the code produces the following
// output:
// 3/8/2007 4:56:03 PM
// 3/8/2007 4:56:03 PM
// 3/11/2007 3:30:00 AM
// 3/11/2007 1:30:00 AM
// True
// 3/11/2007 3:30:00 AM
// True
// 11/4/2007 1:30:00 AM
// 11/4/2007 1:30:00 AM
// True
// 11/4/2007 1:30:00 AM
Dim dto As DateTimeOffset
' Current time
dto = DateTimeOffset.Now
Console.WriteLine(dto.LocalDateTime)
' UTC time
dto = DateTimeOffset.UtcNow
Console.WriteLine(dto.LocalDateTime)
' Transition to DST in local time zone occurs on 3/11/2007 at 2:00 AM
dto = New DateTimeOffset(#03/11/2007 3:30AM#, New Timespan(-7, 0, 0))
Console.WriteLine(dto.LocalDateTime)
dto = New DateTimeOffset(#03/11/2007 2:30AM#, New Timespan(-7, 0, 0))
Console.WriteLine(dto.LocalDateTime)
' Invalid time in local time zone
dto = New DateTimeOffset(#03/11/2007 2:30AM#, New Timespan(-8, 0, 0))
Console.WriteLine(TimeZoneInfo.Local.IsInvalidTime(dto.DateTime))
Console.WriteLine(dto.LocalDateTime)
' Transition from DST in local time zone occurs on 11/4/07 at 2:00 AM
' This is an ambiguous time
dto = New DateTimeOffset(#11/4/2007 1:30AM#, New TimeSpan(-7, 0, 0))
Console.WriteLine(TimeZoneInfo.Local.IsAmbiguousTime(dto))
Console.WriteLine(dto.LocalDateTime)
dto = New DateTimeOffset(#11/4/2007 2:30AM#, New TimeSpan(-7, 0, 0))
Console.WriteLine(TimeZoneInfo.Local.IsAmbiguousTime(dto))
Console.WriteLine(dto.LocalDateTime)
' This is also an ambiguous time
dto = New DateTimeOffset(#11/4/2007 1:30AM#, New TimeSpan(-8, 0, 0))
Console.WriteLine(TimeZoneInfo.Local.IsAmbiguousTime(dto))
Console.WriteLine(dto.LocalDateTime)
' If run on 3/8/2007 at 4:56 PM, the code produces the following
' output:
' 3/8/2007 4:56:03 PM
' 3/8/2007 4:56:03 PM
' 3/11/2007 3:30:00 AM
' 3/11/2007 1:30:00 AM
' True
' 3/11/2007 3:30:00 AM
' True
' 11/4/2007 1:30:00 AM
' 11/4/2007 1:30:00 AM
' True
' 11/4/2007 1:30:00 AM
Comentários
Se necessário, a LocalDateTime propriedade converte a DateTimeOffset data e a hora do objeto atual na data e hora do sistema local.If necessary, the LocalDateTime property converts the current DateTimeOffset object's date and time to the local system's date and time. A conversão é uma operação em duas etapas:The conversion is a two-step operation:
A propriedade converte o DateTimeOffset tempo do objeto atual em UTC (tempo Universal Coordenado).The property converts the current DateTimeOffset object's time to Coordinated Universal Time (UTC).
Em seguida, a propriedade converte UTC em hora local.The property then converts UTC to local time.
Não há horários inválidos e horários ambíguos são mapeados para a hora padrão da zona local.There are no invalid times and ambiguous times are mapped to the local zone's standard time. (No entanto, a conversão pode criar uma anomalia: se um DateTimeOffset valor derivado do computador local refletir uma data e hora ambíguas, esse valor poderá ser convertido em UTC e, em seguida, de volta para uma hora local que seja diferente da hora original.) A propriedade aplica qualquer regra de ajuste no fuso horário local quando ele executa essa conversão.(However, the conversion can create an anomaly: if a DateTimeOffset value that is derived from the local computer reflects an ambiguous date and time, that value can be converted to UTC and then back to a local time that differs from the original time.) The property applies any adjustment rules in the local time zone when it performs this conversion.
Essa propriedade retorna o componente de data e hora de um DateTimeOffset objeto, o que o torna útil para DateTimeOffset a DateTime conversão.This property returns both the date and the time component of a DateTimeOffset object, which makes it useful for DateTimeOffset to DateTime conversion. Além de executar qualquer conversão de tempo necessária, essa propriedade difere da DateTime Propriedade definindo o valor da Kind Propriedade do DateTime objeto retornado como DateTimeKind.Local .In addition to performing any necessary time conversion, this property differs from the DateTime property by setting the value of the Kind property of the returned DateTime object to DateTimeKind.Local.