DateTimeOffset.Implicit(DateTime to DateTimeOffset) Operator

Definition

Definierar en implicit konvertering av ett DateTime objekt till ett DateTimeOffset objekt.

public:
 static operator DateTimeOffset(DateTime dateTime);
public static implicit operator DateTimeOffset(DateTime dateTime);
static member op_Implicit : DateTime -> DateTimeOffset
Public Shared Widening Operator CType (dateTime As DateTime) As DateTimeOffset

Parametrar

dateTime
DateTime

Objektet som ska konverteras.

Returer

Det konverterade objektet.

Undantag

Datum och tid för koordinerad universell tid (UTC) som resulterar i att förskjutningen tillämpas är tidigare än DateTimeOffset.MinValue.

-eller-

UTC-datum och tid som resultatet av att tillämpa förskjutningen är senare än DateTimeOffset.MaxValue.

Kommentarer

Med metoden Implicit kan kompilatorn automatiskt konvertera ett DateTime-objekt till ett DateTimeOffset-objekt utan en explicit gjutningsoperator (i C#) eller ett anrop till en konverteringsfunktion (i Visual Basic). Den definierar en bredare konvertering som inte innebär dataförlust och inte genererar en OverflowException. Metoden Implicit gör kod som följande möjlig:

DateTimeOffset timeWithOffset;
timeWithOffset = new DateTime(2008, 7, 3, 18, 45, 0);
Console.WriteLine(timeWithOffset.ToString());

timeWithOffset = DateTime.UtcNow;
Console.WriteLine(timeWithOffset.ToString());

timeWithOffset = DateTime.SpecifyKind(DateTime.Now,
                                      DateTimeKind.Unspecified);
Console.WriteLine(timeWithOffset.ToString());

timeWithOffset = new DateTime(2008, 7, 1, 2, 30, 0) +
                       new TimeSpan(1, 0, 0, 0);
Console.WriteLine(timeWithOffset.ToString());

timeWithOffset = new DateTime(2008, 1, 1, 2, 30, 0);
Console.WriteLine(timeWithOffset.ToString());
// The example produces the following output if run on 3/20/2007
// at 6:25 PM on a computer in the U.S. Pacific Daylight Time zone:
//       7/3/2008 6:45:00 PM -07:00
//       3/21/2007 1:25:52 AM +00:00
//       3/20/2007 6:25:52 PM -07:00
//       7/2/2008 2:30:00 AM -07:00
//       1/1/2008 2:30:00 AM -08:00
//
// The last example shows automatic adaption to the U.S. Pacific Time
// for winter dates.
let timeWithOffset = DateTime(2008, 7, 3, 18, 45, 0)
printfn $"{timeWithOffset}"

let timeWithOffset = DateTime.UtcNow
printfn $"{timeWithOffset}"

let timeWithOffset =
    DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Unspecified)

printfn $"{timeWithOffset}"

let timeWithOffset =
    DateTime(2008, 7, 1, 2, 30, 0)
    + TimeSpan(1, 0, 0, 0)

printfn $"{timeWithOffset}"

let timeWithOffset = DateTime(2008, 1, 1, 2, 30, 0)
printfn $"{timeWithOffset}"

// The example produces the following output if run on 3/20/2007
// at 6:25 PM on a computer in the U.S. Pacific Daylight Time zone:
//       7/3/2008 6:45:00 PM -07:00
//       3/21/2007 1:25:52 AM +00:00
//       3/20/2007 6:25:52 PM -07:00
//       7/2/2008 2:30:00 AM -07:00
//       1/1/2008 2:30:00 AM -08:00
//
// The last example shows automatic adaption to the U.S. Pacific Time
// for winter dates.
   Dim timeWithOffset As DateTimeOffset 
   timeWithOffset = #07/03/2008 6:45PM#
   Console.WriteLine(timeWithOffset.ToString())
   
   timeWithOffset = Date.UtcNow
   Console.WriteLine(timeWithOffset.ToString())
   
   timeWithOffset = Date.SpecifyKind(Date.Now, DateTimeKind.Unspecified)
   Console.WriteLine(timeWithOffset.ToString())

   timeWithOffset = #07/01/2008 2:30AM# + New TimeSpan(1, 0, 0, 0)
   Console.WriteLine(timeWithOffset.ToString())
     
   timeWithOffset = #01/01/2008 2:30AM#
   Console.WriteLine(timeWithOffset.ToString())
   ' The example produces the following output if run on 3/20/2007 
   ' at 6:25 PM on a computer in the U.S. Pacific Daylight Time zone:
   '       7/3/2008 6:45:00 PM -07:00
   '       3/21/2007 1:25:52 AM +00:00
   '       3/20/2007 6:25:52 PM -07:00
   '       7/2/2008 2:30:00 AM -07:00
   '       1/1/2008 2:30:00 AM -08:00
   '
   ' The last example shows automatic adaption to the U.S. Pacific Time
   ' for winter dates.

Den här metoden motsvarar DateTimeOffset konstruktorn. Förskjutningen av det resulterande DateTimeOffset objektet beror på värdet för DateTime.Kind egenskapen för parametern dateTime :

Motsvarande metod för den här operatorn är DateTimeOffset.DateTimeOffset(DateTime)

Gäller för