Feedback

Zufälliger DateTime-Wert

Sprache: VB

Insbesondere zur Erstellung von Testdaten sind zufällige DateTime-Werte nützlich. Die Besonderheit: Auch der [u]Zeitanteil[/u] der Struktur wird zufällig generiert. [code]Dim MeinZufallsDatum = GetRandomDateTime(New DateTime(2015, 12, 10, 0, 0, 0), New DateTime(2015, 12, 10, 23, 59, 59))[/code]

Private rnd As New Random()

''' <summary>
    ''' Erstellt eine zufällige DateTime-Struktur in einem angebbaren Wertebereich
    ''' </summary>
    ''' <param name="min"></param> Der optionale untere Grenzwert für die Erstellung der DateTime
    ''' <param name="max"></param> Der optionale obere Grenzwert für die Erstellung der DateTime
    ''' <returns>Eine zufällige DateTime-Struktur</returns>
Public Function GetRandomDateTime(Optional min As DateTime = Nothing, Optional max As DateTime = Nothing) As DateTime
        min = If(min = Nothing, New DateTime(1753, 1, 1), min)
        max = If(max = Nothing, New DateTime(9999, 12, 31), max)
        Dim range As TimeSpan = max - min
        Dim randTimeSpan = New TimeSpan(CLng(rnd.NextDouble() * range.Ticks))
        Return min + randTimeSpan
End Function

Private rnd As New Random()

''' <summary>
    ''' Erstellt eine zufällige DateTime-Struktur in einem angebbaren Wertebereich
    ''' </summary>
    ''' <param name="min"></param> Der optionale untere Grenzwert für die Erstellung der DateTime
    ''' <param name="max"></param> Der optionale obere Grenzwert für die Erstellung der DateTime
    ''' <returns>Eine zufällige DateTime-Struktur</returns>
Public Function GetRandomDateTime(Optional min As DateTime = Nothing, Optional max As DateTime = Nothing) As DateTime
        min = If(min = Nothing, New DateTime(1753, 1, 1), min)
        max = If(max = Nothing, New DateTime(9999, 12, 31), max)
        Dim range As TimeSpan = max - min
        Dim randTimeSpan = New TimeSpan(CLng(rnd.NextDouble() * range.Ticks))
        Return min + randTimeSpan
End Function