Condividi tramite


DateTimeOffset.Subtract Metodo

Definizione

Sottrae un intervallo di tempo o una durata specificata dall'oggetto DateTimeOffset corrente.

Overload

Subtract(DateTimeOffset)

Sottrae un valore DateTimeOffset che rappresenta una data e un'ora specifiche dall'oggetto DateTimeOffset corrente.

Subtract(TimeSpan)

Sottrae un intervallo di tempo specificato dall'oggetto DateTimeOffset corrente.

Subtract(DateTimeOffset)

Origine:
DateTimeOffset.cs
Origine:
DateTimeOffset.cs
Origine:
DateTimeOffset.cs

Sottrae un valore DateTimeOffset che rappresenta una data e un'ora specifiche dall'oggetto DateTimeOffset corrente.

public:
 TimeSpan Subtract(DateTimeOffset value);
public TimeSpan Subtract (DateTimeOffset value);
member this.Subtract : DateTimeOffset -> TimeSpan
Public Function Subtract (value As DateTimeOffset) As TimeSpan

Parametri

value
DateTimeOffset

Oggetto che rappresenta il valore da sottrarre.

Restituisce

Oggetto che specifica l'intervallo tra i due oggetti DateTimeOffset.

Esempio

Nell'esempio seguente viene illustrata la sottrazione che usa il Subtract(DateTimeOffset) metodo .

DateTimeOffset firstDate = new DateTimeOffset(2018, 10, 25, 18, 0, 0,
                                              new TimeSpan(-7, 0, 0));
DateTimeOffset secondDate = new DateTimeOffset(2018, 10, 25, 18, 0, 0,
                                               new TimeSpan(-5, 0, 0));
DateTimeOffset thirdDate = new DateTimeOffset(2018, 9, 28, 9, 0, 0,
                                              new TimeSpan(-7, 0, 0));
TimeSpan difference;

difference = firstDate.Subtract(secondDate);
Console.WriteLine($"({firstDate}) - ({secondDate}): {difference.Days} days, {difference.Hours}:{difference.Minutes:d2}");

difference = firstDate.Subtract(thirdDate);
Console.WriteLine($"({firstDate}) - ({thirdDate}): {difference.Days} days, {difference.Hours}:{difference.Minutes:d2}");

// The example produces the following output:
//    (10/25/2018 6:00:00 PM -07:00) - (10/25/2018 6:00:00 PM -05:00): 0 days, 2:00
//    (10/25/2018 6:00:00 PM -07:00) - (9/28/2018 9:00:00 AM -07:00): 27 days, 9:00
let firstDate = DateTimeOffset(2018, 10, 25, 18, 0, 0, TimeSpan(-7, 0, 0))
let secondDate = DateTimeOffset(2018, 10, 25, 18, 0, 0, TimeSpan(-5, 0, 0))
let thirdDate = DateTimeOffset(2018, 9, 28, 9, 0, 0, TimeSpan(-7, 0, 0))

let difference = firstDate.Subtract secondDate
printfn $"({firstDate}) - ({secondDate}): {difference.Days} days, {difference.Hours}:{difference.Minutes:d2}"

let difference = firstDate.Subtract thirdDate
printfn $"({firstDate}) - ({thirdDate}): {difference.Days} days, {difference.Hours}:{difference.Minutes:d2}"

// The example produces the following output:
//    (10/25/2018 6:00:00 PM -07:00) - (10/25/2018 6:00:00 PM -05:00): 0 days, 2:00
//    (10/25/2018 6:00:00 PM -07:00) - (9/28/2018 9:00:00 AM -07:00): 27 days, 9:00
Dim firstDate As New DateTimeOffset(#10/25/2018 6:00PM#, _
                                    New TimeSpan(-7, 0, 0))
Dim secondDate As New DateTimeOffset(#10/25/2018 6:00PM#, _
                                     New TimeSpan(-5, 0, 0))
Dim thirdDate As New DateTimeOffset(#9/28/2018 9:00AM#, _
                                    New TimeSpan(-7, 0, 0))
Dim difference As TimeSpan

difference = firstDate.Subtract(secondDate)
Console.WriteLine($"({firstDate}) - ({secondDate}): {difference.Days} days, {difference.Hours}:{difference.Minutes:d2}")

difference = firstDate.Subtract(thirdDate)
Console.WriteLine($"({firstDate}) - ({thirdDate}): {difference.Days} days, {difference.Hours}:{difference.Minutes:d2}")

' The example produces the following output:
'    (10/25/2018 6:00:00 PM -07:00) - (10/25/2018 6:00:00 PM -05:00): 0 days, 2:00
'    (10/25/2018 6:00:00 PM -07:00) - (9/28/2018 9:00:00 AM -07:00): 27 days, 9:00

Commenti

Questo metodo converte entrambi gli DateTimeOffset oggetti in Utc (Coordinated Universal Time) prima di calcolare l'intervallo di tempo che li separa. In questo modo viene rimosso qualsiasi effetto che le diverse offset da UTC potrebbero avere nel confronto.

Nota

Per i linguaggi che supportano operatori personalizzati, è anche possibile eseguire sottrazione di data e ora usando l'operatore di sottrazione. Per informazioni dettagliate, vedere il Subtraction metodo .

Poiché né l'oggetto corrente DateTimeOffset né il value parametro rappresentano la data e l'ora in un fuso orario specifico, il Subtract(DateTimeOffset) metodo non considera le regole di regolazione di un determinato fuso orario quando sottrae date e ore.

Vedi anche

Si applica a

Subtract(TimeSpan)

Origine:
DateTimeOffset.cs
Origine:
DateTimeOffset.cs
Origine:
DateTimeOffset.cs

Sottrae un intervallo di tempo specificato dall'oggetto DateTimeOffset corrente.

public:
 DateTimeOffset Subtract(TimeSpan value);
public DateTimeOffset Subtract (TimeSpan value);
member this.Subtract : TimeSpan -> DateTimeOffset
Public Function Subtract (value As TimeSpan) As DateTimeOffset

Parametri

value
TimeSpan

Intervallo di tempo da sottrarre.

Restituisce

Oggetto che equivale alla data e all'ora rappresentate dall'oggetto DateTimeOffset corrente, meno l'intervallo di tempo rappresentato da value.

Eccezioni

Il valore risultante DateTimeOffset è minore di DateTimeOffset.MinValue.

-oppure-

Il valore risultante DateTimeOffset è maggiore di DateTimeOffset.MaxValue.

Esempio

Nell'esempio seguente viene illustrata la sottrazione che usa il Subtract metodo .

DateTimeOffset offsetDate = new DateTimeOffset(2007, 12, 3, 11, 30, 0,
                               new TimeSpan(-8, 0, 0));
TimeSpan duration = new TimeSpan(7, 18, 0, 0);
Console.WriteLine(offsetDate.Subtract(duration).ToString());  // Displays 11/25/2007 5:30:00 PM -08:00
let offsetDate = DateTimeOffset(2007, 12, 3, 11, 30, 0, TimeSpan(-8, 0, 0))
let duration = TimeSpan(7, 18, 0, 0)
printfn $"{offsetDate.Subtract duration}"  // Displays 11/25/2007 5:30:00 PM -08:00
Dim offsetDate As New DateTimeOffset(#12/3/2007 11:30AM#, _
                               New TimeSpan(-8, 0, 0)) 
Dim duration As New TimeSpan(7, 18, 0, 0)
Console.WriteLine(offsetDate.Subtract(duration))    ' Displays 11/25/2007 5:30:00 PM -08:00

Commenti

È possibile usare il Subtract metodo per sottrarre più tipi di intervallo di tempo (giorni, ore, minuti, secondi o millisecondi) in una singola operazione. Il suo comportamento è identico al metodo, che definisce l'operatore Subtraction(DateTimeOffset, TimeSpan) di sottrazione. La DateTimeOffset struttura supporta anche metodi di addizione specializzati (ad esempio AddDays, AddHourse ) AddMinutesche consentono di eseguire la sottrazione assegnando un valore negativo al parametro del metodo.

Nota

Questo metodo restituisce un nuovo DateTimeOffset oggetto. Non modifica il valore dell'oggetto corrente sottraendo value dalla data e dall'ora.

Il Subtract metodo non influisce sul valore della DateTimeOffset proprietà dell'oggetto Offset . L'oggetto restituito DateTimeOffset ha lo stesso offset dell'oggetto originale.

Poiché l'oggetto corrente DateTimeOffset non rappresenta la data e l'ora in un fuso orario specifico, il Subtract(TimeSpan) metodo non considera le regole di regolazione di un determinato fuso orario quando esegue la sottrazione.

Vedi anche

Si applica a