Ich versuche einige TimeSpans für einige Berechnungen zusammen hinzuzufügen.
zB:Überprüfen Sie, ob das Hinzufügen von TimeSpans TimeSpan.MaxValue
var timeSpan1 = new TimeSpan.FromMinutes(1);
var timeSpan2 = new TimeSpan.MaxValue;
var timeSpan3 = timeSpan1 + timeSpan2;
In diesem Fall wird es die TimeSpan.MaxValue überschreiten und eine Ausnahme
System.OverflowException werfen: Timespan überschwemmt, da die Dauer zu lang ist.
Was ist der richtige Weg, um TimeSpans hinzuzufügen?
Muss ich einen Try-Catch um mich legen oder meine eigene Erweiterungsmethode schreiben? Scheint so, als ob dies Teil des .Net-Frameworks sein sollte - entweder standardmäßig auf MaxValue oder eine TryAdd-Methode.
Warum denken Sie, dass das Auslösen einer Ausnahme nicht das richtige Verhalten ist? Wenn "timeSpan3" in "TimeSpan.MaxValue" resultieren würde, würdest du die Regeln der Mathematik so brechen, dass "timeSpan3 - timeSpan1! = TimeSpan2". –
@MattJohnson Guter Punkt! Mein Anwendungsfall für MaxValue ist jedoch "unendlich". Also "unendlich + unendlich = unendlich". In diesem Fall sollte ich auch nicht 'infinity - timepan = ... 'verwenden und auf das Ergebnis vertrauen. – JumpingJezza