TimeZoneInfo.ConvertTime Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir saati belirli bir saat dilimindeki saate dönüştürür.
Aşırı Yüklemeler
ConvertTime(DateTime, TimeZoneInfo) |
Bir saati belirli bir saat dilimindeki saate dönüştürür. |
ConvertTime(DateTimeOffset, TimeZoneInfo) |
Bir saati belirli bir saat dilimindeki saate dönüştürür. |
ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo) |
Bir saati bir saat diliminden diğerine dönüştürür. |
ConvertTime(DateTime, TimeZoneInfo)
- Kaynak:
- TimeZoneInfo.cs
- Kaynak:
- TimeZoneInfo.cs
- Kaynak:
- TimeZoneInfo.cs
Bir saati belirli bir saat dilimindeki saate dönüştürür.
public:
static DateTime ConvertTime(DateTime dateTime, TimeZoneInfo ^ destinationTimeZone);
public static DateTime ConvertTime (DateTime dateTime, TimeZoneInfo destinationTimeZone);
static member ConvertTime : DateTime * TimeZoneInfo -> DateTime
Public Shared Function ConvertTime (dateTime As DateTime, destinationTimeZone As TimeZoneInfo) As DateTime
Parametreler
- dateTime
- DateTime
Dönüştürülecek tarih ve saat.
- destinationTimeZone
- TimeZoneInfo
Dönüştürülecek dateTime
saat dilimi.
Döndürülenler
Hedef saat dilimindeki tarih ve saat.
Özel durumlar
parametresinin dateTime
değeri geçersiz bir zamanı temsil eder.
parametresinin destinationTimeZone
değeridir null
.
Örnekler
Aşağıdaki örnek, bir tarih ve saat değerleri dizisini ABD ve Kanada'nın Doğu Saat dilimindeki saatlere dönüştürür. Kaynak saat diliminin kaynak değerin özelliğine DateTime.KindDateTime bağlı olduğunu gösterir. Ayrıca 7 Kasım 2010 saat 02:00'de hem kaynak hem de hedef saat dilimlerinde saat dilimi ayarlaması gerçekleştiğinden yönteminin saat dilimi ayarlamalarını hesaba kattığını gösterir ConvertTime .
using System;
public class Example
{
public static void Main()
{
// Define times to be converted.
DateTime[] times = { new DateTime(2010, 1, 1, 0, 1, 0),
new DateTime(2010, 1, 1, 0, 1, 0, DateTimeKind.Utc),
new DateTime(2010, 1, 1, 0, 1, 0, DateTimeKind.Local),
new DateTime(2010, 11, 6, 23, 30, 0),
new DateTime(2010, 11, 7, 2, 30, 0) };
// Retrieve the time zone for Eastern Standard Time (U.S. and Canada).
TimeZoneInfo est;
try {
est = TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time");
}
catch (TimeZoneNotFoundException) {
Console.WriteLine("Unable to retrieve the Eastern Standard time zone.");
return;
}
catch (InvalidTimeZoneException) {
Console.WriteLine("Unable to retrieve the Eastern Standard time zone.");
return;
}
// Display the current time zone name.
Console.WriteLine("Local time zone: {0}\n", TimeZoneInfo.Local.DisplayName);
// Convert each time in the array.
foreach (DateTime timeToConvert in times)
{
DateTime targetTime = TimeZoneInfo.ConvertTime(timeToConvert, est);
Console.WriteLine("Converted {0} {1} to {2}.", timeToConvert,
timeToConvert.Kind, targetTime);
}
}
}
// The example displays the following output:
// Local time zone: (GMT-08:00) Pacific Time (US & Canada)
//
// Converted 1/1/2010 12:01:00 AM Unspecified to 1/1/2010 3:01:00 AM.
// Converted 1/1/2010 12:01:00 AM Utc to 12/31/2009 7:01:00 PM.
// Converted 1/1/2010 12:01:00 AM Local to 1/1/2010 3:01:00 AM.
// Converted 11/6/2010 11:30:00 PM Unspecified to 11/7/2010 1:30:00 AM.
// Converted 11/7/2010 2:30:00 AM Unspecified to 11/7/2010 5:30:00 AM.
open System
// Define times to be converted.
let times =
[| DateTime(2010, 1, 1, 0, 1, 0)
DateTime(2010, 1, 1, 0, 1, 0, DateTimeKind.Utc)
DateTime(2010, 1, 1, 0, 1, 0, DateTimeKind.Local)
DateTime(2010, 11, 6, 23, 30, 0)
DateTime(2010, 11, 7, 2, 30, 0) |]
// Retrieve the time zone for Eastern Standard Time (U.S. and Canada).
try
let est = TimeZoneInfo.FindSystemTimeZoneById "Eastern Standard Time"
// Display the current time zone name.
printfn $"Local time zone: {TimeZoneInfo.Local.DisplayName}\n"
// Convert each time in the array.
for timeToConvert in times do
let targetTime = TimeZoneInfo.ConvertTime(timeToConvert, est)
printfn $"Converted {timeToConvert} {timeToConvert.Kind} to {targetTime}."
with
| :? TimeZoneNotFoundException ->
printfn "Unable to retrieve the Eastern Standard time zone."
| :? InvalidTimeZoneException ->
printfn "Unable to retrieve the Eastern Standard time zone."
// The example displays the following output:
// Local time zone: (GMT-08:00) Pacific Time (US & Canada)
//
// Converted 1/1/2010 12:01:00 AM Unspecified to 1/1/2010 3:01:00 AM.
// Converted 1/1/2010 12:01:00 AM Utc to 12/31/2009 7:01:00 PM.
// Converted 1/1/2010 12:01:00 AM Local to 1/1/2010 3:01:00 AM.
// Converted 11/6/2010 11:30:00 PM Unspecified to 11/7/2010 1:30:00 AM.
// Converted 11/7/2010 2:30:00 AM Unspecified to 11/7/2010 5:30:00 AM.
Module Example
Public Sub Main()
' Define times to be converted.
Dim times() As Date = { #1/1/2010 12:01AM#, _
DateTime.SpecifyKind(#1/1/2010 12:01AM#, DateTimeKind.Utc), _
DateTime.SpecifyKind(#1/1/2010 12:01AM#, DateTimeKind.Local), _
#11/6/2010 11:30PM#, #11/7/2010 2:30AM# }
' Retrieve the time zone for Eastern Standard Time (U.S. and Canada).
Dim est As TimeZoneInfo
Try
est = TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time")
Catch e As TimeZoneNotFoundException
Console.WriteLine("Unable to retrieve the Eastern Standard time zone.")
Exit Sub
Catch e As InvalidTimeZoneException
Console.WriteLine("Unable to retrieve the Eastern Standard time zone.")
Exit Sub
End Try
' Display the current time zone name.
Console.WriteLine("Local time zone: {0}", TimeZoneInfo.Local.DisplayName)
Console.WriteLine()
' Convert each time in the array.
For Each timeToConvert As Date In times
Dim targetTime As Date = TimeZoneInfo.ConvertTime(timeToConvert, est)
Console.WriteLine("Converted {0} {1} to {2}.", timeToConvert, _
timeToConvert.Kind, targetTime)
Next
End Sub
End Module
' The example displays the following output:
' Local time zone: (GMT-08:00) Pacific Time (US & Canada)
'
' Converted 1/1/2010 12:01:00 AM Unspecified to 1/1/2010 3:01:00 AM.
' Converted 1/1/2010 12:01:00 AM Utc to 12/31/2009 7:01:00 PM.
' Converted 1/1/2010 12:01:00 AM Local to 1/1/2010 3:01:00 AM.
' Converted 11/6/2010 11:30:00 PM Unspecified to 11/7/2010 1:30:00 AM.
' Converted 11/7/2010 2:30:00 AM Unspecified to 11/7/2010 5:30:00 AM.
Açıklamalar
Dönüştürmeyi gerçekleştirirken yöntemi, ConvertTime(DateTimeOffset, TimeZoneInfo) saat diliminde geçerli destinationTimeZone
olan tüm ayarlama kurallarını uygular.
Yönteminin ConvertTime(DateTime, TimeZoneInfo) bu aşırı yüklemesi, aşağıdaki tabloda gösterildiği gibi parametrenin Kind özelliğinin değerinden dateTime
kaynak saat dilimini belirler.
Kind özellik değeri | Kaynak saat dilimi | Yöntem davranışı |
---|---|---|
DateTimeKind.Local | Local | yerel saati içindeki destinationTimeZone saate dönüştürür. |
DateTimeKind.Utc | Utc | Eşgüdümlü Evrensel Saati (UTC) içindeki destinationTimeZone saate dönüştürür. |
DateTimeKind.Unspecified | olduğu varsayılır Local. | yerel saati içindeki destinationTimeZone saate dönüştürür. |
Kind Döndürülen DateTime değerin özelliği aşağıdaki tabloda gösterildiği gibi ayarlanır.
Koşul | Döndürülen Kind özellik değeri |
---|---|
, destinationTimeZone şeklindedir TimeZoneInfo.Utc. |
DateTimeKind.Utc |
, destinationTimeZone şeklindedir TimeZoneInfo.Local. |
DateTimeKind.Local |
Diğer tüm tarih ve saat değerleri ile hedef saat dilimleri. | DateTimeKind.Unspecified |
parametresinin dateTime
değeri belirsiz bir yerel saatse, standart saat olarak yorumlanır. dateTime
Parametre geçersiz bir yerel saatse, bu yöntem bir ArgumentExceptionoluşturur.
Dönüştürme işlemi, değerinden dateTime
önceki DateTime.MinValue veya sonraki DateTime.MaxValuebir tarih ve saat değeriyle sonuçlanırsa, bu yöntem sırasıyla veya DateTime.MaxValuedöndürürDateTime.MinValue.
ayrıca ve ConvertTimeToUtc yöntemlerini çağırarak ConvertTimeFromUtc UTC'ye veya UTC'ye dönüştürebilirsiniz.
Ayrıca bkz.
Şunlara uygulanır
ConvertTime(DateTimeOffset, TimeZoneInfo)
- Kaynak:
- TimeZoneInfo.cs
- Kaynak:
- TimeZoneInfo.cs
- Kaynak:
- TimeZoneInfo.cs
Bir saati belirli bir saat dilimindeki saate dönüştürür.
public:
static DateTimeOffset ConvertTime(DateTimeOffset dateTimeOffset, TimeZoneInfo ^ destinationTimeZone);
public static DateTimeOffset ConvertTime (DateTimeOffset dateTimeOffset, TimeZoneInfo destinationTimeZone);
static member ConvertTime : DateTimeOffset * TimeZoneInfo -> DateTimeOffset
Public Shared Function ConvertTime (dateTimeOffset As DateTimeOffset, destinationTimeZone As TimeZoneInfo) As DateTimeOffset
Parametreler
- dateTimeOffset
- DateTimeOffset
Dönüştürülecek tarih ve saat.
- destinationTimeZone
- TimeZoneInfo
Dönüştürülecek dateTime
saat dilimi.
Döndürülenler
Hedef saat dilimindeki tarih ve saat.
Özel durumlar
parametresinin destinationTimeZone
değeridir null
.
Örnekler
Aşağıdaki örnek, bir değer dizisini ABD ve Kanada'nın DateTimeOffset Doğu Saat dilimindeki saatlere dönüştürür. Saat dilimi ayarlaması ConvertTime 7 Kasım 2010 saat 02:00'de hem kaynak hem de hedef saat dilimlerinde gerçekleştiğinden yönteminin saat dilimi ayarlamalarını hesaba kattığını gösterir.
using System;
public class Example
{
public static void Main()
{
// Define times to be converted.
DateTime time1 = new DateTime(2010, 1, 1, 12, 1, 0);
DateTime time2 = new DateTime(2010, 11, 6, 23, 30, 0);
DateTimeOffset[] times = { new DateTimeOffset(time1, TimeZoneInfo.Local.GetUtcOffset(time1)),
new DateTimeOffset(time1, TimeSpan.Zero),
new DateTimeOffset(time2, TimeZoneInfo.Local.GetUtcOffset(time2)),
new DateTimeOffset(time2.AddHours(3), TimeZoneInfo.Local.GetUtcOffset(time2.AddHours(3))) };
// Retrieve the time zone for Eastern Standard Time (U.S. and Canada).
TimeZoneInfo est;
try {
est = TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time");
}
catch (TimeZoneNotFoundException) {
Console.WriteLine("Unable to retrieve the Eastern Standard time zone.");
return;
}
catch (InvalidTimeZoneException) {
Console.WriteLine("Unable to retrieve the Eastern Standard time zone.");
return;
}
// Display the current time zone name.
Console.WriteLine("Local time zone: {0}\n", TimeZoneInfo.Local.DisplayName);
// Convert each time in the array.
foreach (DateTimeOffset timeToConvert in times)
{
DateTimeOffset targetTime = TimeZoneInfo.ConvertTime(timeToConvert, est);
Console.WriteLine("Converted {0} to {1}.", timeToConvert, targetTime);
}
}
}
// The example displays the following output:
// Local time zone: (GMT-08:00) Pacific Time (US & Canada)
//
// Converted 1/1/2010 12:01:00 AM -08:00 to 1/1/2010 3:01:00 AM -05:00.
// Converted 1/1/2010 12:01:00 AM +00:00 to 12/31/2009 7:01:00 PM -05:00.
// Converted 11/6/2010 11:30:00 PM -07:00 to 11/7/2010 1:30:00 AM -05:00.
// Converted 11/7/2010 2:30:00 AM -08:00 to 11/7/2010 5:30:00 AM -05:00.
open System
// Define times to be converted.
let time1 = DateTime(2010, 1, 1, 12, 1, 0)
let time2 = DateTime(2010, 11, 6, 23, 30, 0)
let times =
[| DateTimeOffset(time1, TimeZoneInfo.Local.GetUtcOffset time1)
DateTimeOffset(time1, TimeSpan.Zero)
DateTimeOffset(time2, TimeZoneInfo.Local.GetUtcOffset time2)
DateTimeOffset(time2.AddHours 3, TimeZoneInfo.Local.GetUtcOffset(time2.AddHours 3)) |]
// Retrieve the time zone for Eastern Standard Time (U.S. and Canada).
try
let est = TimeZoneInfo.FindSystemTimeZoneById "Eastern Standard Time"
// Display the current time zone name.
printfn $"Local time zone: {TimeZoneInfo.Local.DisplayName}\n"
// Convert each time in the array.
for timeToConvert in times do
let targetTime = TimeZoneInfo.ConvertTime(timeToConvert, est)
printfn $"Converted {timeToConvert} to {targetTime}."
with
| :? TimeZoneNotFoundException ->
printfn "Unable to retrieve the Eastern Standard time zone."
| :? InvalidTimeZoneException ->
printfn "Unable to retrieve the Eastern Standard time zone."
// The example displays the following output:
// Local time zone: (GMT-08:00) Pacific Time (US & Canada)
//
// Converted 1/1/2010 12:01:00 AM -08:00 to 1/1/2010 3:01:00 AM -05:00.
// Converted 1/1/2010 12:01:00 AM +00:00 to 12/31/2009 7:01:00 PM -05:00.
// Converted 11/6/2010 11:30:00 PM -07:00 to 11/7/2010 1:30:00 AM -05:00.
// Converted 11/7/2010 2:30:00 AM -08:00 to 11/7/2010 5:30:00 AM -05:00.
Module Example
Public Sub Main()
' Define times to be converted.
Dim time1 As Date = #1/1/2010 12:01AM#
Dim time2 As Date = #11/6/2010 11:30PM#
Dim times() As DateTimeOffset = { New DateTimeOffset(time1, TimeZoneInfo.Local.GetUtcOffset(time1)), _
New DateTimeOffset(time1, Timespan.Zero), _
New DateTimeOffset(time2, TimeZoneInfo.Local.GetUtcOffset(time2)), _
New DateTimeOffset(time2.AddHours(3), TimeZoneInfo.Local.GetUtcOffset(time2.AddHours(3))) }
' Retrieve the time zone for Eastern Standard Time (U.S. and Canada).
Dim est As TimeZoneInfo
Try
est = TimeZoneInfo.FindSystemTimeZoneById("Eastern Standard Time")
Catch e As TimeZoneNotFoundException
Console.WriteLine("Unable to retrieve the Eastern Standard time zone.")
Exit Sub
Catch e As InvalidTimeZoneException
Console.WriteLine("Unable to retrieve the Eastern Standard time zone.")
Exit Sub
End Try
' Display the current time zone name.
Console.WriteLine("Local time zone: {0}", TimeZoneInfo.Local.DisplayName)
Console.WriteLine()
' Convert each time in the array.
For Each timeToConvert As DateTimeOffset In times
Dim targetTime As DateTimeOffset = TimeZoneInfo.ConvertTime(timeToConvert, est)
Console.WriteLine("Converted {0} to {1}.", timeToConvert, targetTime)
Next
End Sub
End Module
' The example displays the following output:
' Local time zone: (GMT-08:00) Pacific Time (US & Canada)
'
' Converted 1/1/2010 12:01:00 AM -08:00 to 1/1/2010 3:01:00 AM -05:00.
' Converted 1/1/2010 12:01:00 AM +00:00 to 12/31/2009 7:01:00 PM -05:00.
' Converted 11/6/2010 11:30:00 PM -07:00 to 11/7/2010 1:30:00 AM -05:00.
' Converted 11/7/2010 2:30:00 AM -08:00 to 11/7/2010 5:30:00 AM -05:00.
Açıklamalar
Dönüştürmeyi gerçekleştirirken yöntemi, ConvertTime(DateTimeOffset, TimeZoneInfo) saat diliminde geçerli destinationTimeZone
olan tüm ayarlama kurallarını uygular.
Bu aşırı yükleme, bir DateTimeOffset değeri ilk parametresi olarak kabul ederek yöntemin ConvertTime diğer aşırı yüklemelerinden farklıdır. Bu, tarih ve saati belirli bir saat dilimindeki tarih ve saat yerine Eşgüdümlü Evrensel Saat'ten (UTC) uzaklık olarak tanımlar. Sonuç olarak, dateTimeOffset
parametresi belirsiz bir zamanı veya geçersiz bir zamanı temsil edemez.
Değeri hedef saat dilimindeki saate dönüştürürken dateTimeOffset
, bu yöntem hedef saat diliminde geçerli olan tüm ayarlama kurallarını dikkate alır.
Dönüştürme işlemi, değerinden dateTimeOffset
önceki DateTimeOffset.MinValue veya sonraki DateTimeOffset.MaxValuebir tarih ve saat değeriyle sonuçlanırsa, bu yöntem sırasıyla veya DateTimeOffset.MaxValuedöndürürDateTimeOffset.MinValue.
Ayrıca bkz.
Şunlara uygulanır
ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo)
- Kaynak:
- TimeZoneInfo.cs
- Kaynak:
- TimeZoneInfo.cs
- Kaynak:
- TimeZoneInfo.cs
Bir saati bir saat diliminden diğerine dönüştürür.
public:
static DateTime ConvertTime(DateTime dateTime, TimeZoneInfo ^ sourceTimeZone, TimeZoneInfo ^ destinationTimeZone);
public static DateTime ConvertTime (DateTime dateTime, TimeZoneInfo sourceTimeZone, TimeZoneInfo destinationTimeZone);
static member ConvertTime : DateTime * TimeZoneInfo * TimeZoneInfo -> DateTime
Public Shared Function ConvertTime (dateTime As DateTime, sourceTimeZone As TimeZoneInfo, destinationTimeZone As TimeZoneInfo) As DateTime
Parametreler
- dateTime
- DateTime
Dönüştürülecek tarih ve saat.
- sourceTimeZone
- TimeZoneInfo
saat dilimi.dateTime
- destinationTimeZone
- TimeZoneInfo
Dönüştürülecek dateTime
saat dilimi.
Döndürülenler
Hedef saat dilimindeki kaynak saat dilimindeki dateTime
parametreye karşılık gelen tarih ve saat.
Özel durumlar
Kind parametresinin dateTime
özelliği şeklindedirLocal, ancak sourceTimeZone
parametresi eşit Localdeğildir.
-veya-
Kind parametresinin dateTime
özelliği şeklindedirUtc, ancak sourceTimeZone
parametresi eşit Utcdeğildir.
-veya-
dateTime
parametresi geçersiz bir saattir (yani, bir saat diliminin ayarlama kuralları nedeniyle var olmayan bir saati temsil eder).
sourceTimeZone
parametresidirnull
.
-veya-
destinationTimeZone
parametresidirnull
.
Örnekler
Aşağıdaki örnekte Hawaii Standart Saati'nden yerel saate dönüştürmek için yönteminin kullanımı ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo) gösterilmektedir.
DateTime hwTime = new DateTime(2007, 02, 01, 08, 00, 00);
try
{
TimeZoneInfo hwZone = TimeZoneInfo.FindSystemTimeZoneById("Hawaiian Standard Time");
Console.WriteLine("{0} {1} is {2} local time.",
hwTime,
hwZone.IsDaylightSavingTime(hwTime) ? hwZone.DaylightName : hwZone.StandardName,
TimeZoneInfo.ConvertTime(hwTime, hwZone, TimeZoneInfo.Local));
}
catch (TimeZoneNotFoundException)
{
Console.WriteLine("The registry does not define the Hawaiian Standard Time zone.");
}
catch (InvalidTimeZoneException)
{
Console.WriteLine("Registry data on the Hawaiian Standard Time zone has been corrupted.");
}
let hwTime = DateTime(2007, 02, 01, 08, 00, 00)
try
let hwZone = TimeZoneInfo.FindSystemTimeZoneById "Hawaiian Standard Time"
printfn $"{hwTime} {if hwZone.IsDaylightSavingTime hwTime then hwZone.DaylightName else hwZone.StandardName} is {TimeZoneInfo.ConvertTime(hwTime, hwZone, TimeZoneInfo.Local)} local time."
with
| :? TimeZoneNotFoundException ->
printfn "The registry does not define the Hawaiian Standard Time zone."
| :? InvalidTimeZoneException ->
printfn "Registry data on the Hawaiian Standard Time zone has been corrupted."
Dim hwTime As Date = #2/01/2007 8:00:00 AM#
Try
Dim hwZone As TimeZoneInfo = TimeZoneInfo.FindSystemTimeZoneById("Hawaiian Standard Time")
Console.WriteLine("{0} {1} is {2} local time.", _
hwTime, _
IIf(hwZone.IsDaylightSavingTime(hwTime), hwZone.DaylightName, hwZone.StandardName), _
TimeZoneInfo.ConvertTime(hwTime, hwZone, TimeZoneInfo.Local))
Catch e As TimeZoneNotFoundException
Console.WriteLine("The registry does not define the Hawaiian Standard Time zone.")
Catch e As InvalidTimeZoneException
Console.WriteLine("Registry data on the Hawaiian Standard Time zone has been corrupted.")
End Try
Açıklamalar
Dönüştürmeyi gerçekleştirirken yöntemi, ConvertTime saat diliminde geçerli destinationTimeZone
olan tüm ayarlama kurallarını uygular.
Parametrenin Kind özelliğinin dateTime
değeri, aşağıdaki tabloda gösterildiği gibi parametresine karşılık sourceTimeZone
gelir.
DateTime.Kind değeri | sourceTimeZone değeri | Yöntem davranışı |
---|---|---|
DateTimeKind.Utc | eşittir TimeZoneInfo.Utc. | dateTime Hedef saat diliminin saatine dönüştürür. |
DateTimeKind.Utc | eşit TimeZoneInfo.Utcdeğildir. | bir ArgumentExceptionoluşturur. |
DateTimeKind.Local | eşittir TimeZoneInfo.Local. | dateTime Hedef saat diliminin saatine dönüştürür. |
DateTimeKind.Local | eşit TimeZoneInfo.Localdeğildir. | bir ArgumentExceptionoluşturur. |
DateTimeKind.Unspecified | Herhangi biri. | dateTime Hedef saat diliminin saatine dönüştürür. |
ayrıca ve ConvertTimeToUtc yöntemlerini çağırarak ConvertTimeFromUtc Eşgüdümlü Evrensel Saat'e (UTC) dönüştürebilirsiniz.
Kind Döndürülen DateTime değerin özelliği aşağıdaki tabloda gösterildiği gibi ayarlanır.
Koşul | Döndürülen Kind özellik değeri |
---|---|
destinationTimeZone bağımsız değişkenidirTimeZoneInfo.Utc. |
DateTimeKind.Utc |
destinationTimeZone bağımsız değişkenidirTimeZoneInfo.Local. |
DateTimeKind.Local |
Diğer tüm tarih ve saat değerleri, kaynak saat dilimleri ve hedef saat dilimleri. | DateTimeKind.Unspecified |
Parametrenin dateTime
değeri kaynak saat diliminde belirsiz bir saatse, standart saat olarak yorumlanır. dateTime
Parametre kaynak saat diliminde geçersiz bir saatse, bu yöntem bir ArgumentExceptionoluşturur.
Dönüştürme işlemi, değerinden dateTime
önceki DateTime.MinValue veya sonraki DateTime.MaxValuebir tarih ve saat değeriyle sonuçlanırsa, bu yöntem sırasıyla veya DateTime.MaxValuedöndürürDateTime.MinValue.
bağımsız değişkeninin ConvertTime(DateTime, TimeZoneInfo, TimeZoneInfo)DateTime.Kind özelliği dateTime
ise ancak sourceTimeZone
bağımsız değişken DateTimeKind.Local değilse TimeZoneInfo.Localyöntemi bir ArgumentException özel durum oluşturur. Kaynak saat diliminin yerel saat dilimi mi yoksa evrensel saat dilimi mi olduğunu belirlemek için yöntem, yöntemiyle değer eşitliğini test etmek yerine başvuru eşitliğini sınar Equals(TimeZoneInfo) . TimeZoneInfo Yerel saat dilimini temsil eden ve yöntemi çağrılarak FindSystemTimeZoneById alınan nesnelerin ile TimeZoneInfo.Localbilgi eşitliğine sahip olmadığını unutmayın. Ayrıca, TimeZoneInfo yerel veya evrensel saat dilimini temsil eden ve yöntemi tarafından GetSystemTimeZones döndürülen koleksiyon yinelenerek alınan nesnelerin veya TimeZoneInfo.Utcile TimeZoneInfo.Local bilgi eşitliği yoktur. Alternatif olarak yöntemini çağırabilirsiniz ConvertTimeBySystemTimeZoneId(DateTime, String, String) .
Ayrıca bkz.
Şunlara uygulanır
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin