Aggregatfunktionen unter VB.NET?

  • VB.NET
  • .NET (FX) 1.0–2.0

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von EaranMaleasi.

    Aggregatfunktionen unter VB.NET?

    Moin! :)
    Ich habe Geldwerte(Decimal) mit diesen möchte ich gerne arbeiten.
    In SQL gibt es Aggregatfunktionen, gibt es diese auch in VB.NET?
    (AVG, MIN, MAX, …)
    Ich habe bereits ein String-Array und mit einer List(of String) ausprobiert.
    Falls jemand eine Möglichkeit kennt, freue ich mich sehr.
    BIG THX
    Visual Basic.NET 8o
    MS-SQL
    8o
    @Cheffboss Wenn Du den Namespace System.Linq importierst, bekommst Du einen Haufen solcher Funktionen.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Danke, für die Info. ^^
    Leider unterstütz das .NET Framework 2.00 keine System.Linq.
    Dann muss ich wohl das Framework ändern.
    Weiß du zufällig, ab welcher Version das System.Linq Namespace vorhanden ist?

    VB.NET-Quellcode

    1. Private Sub BeispielCode
    2. Dim grades As List(Of Decimal) = New List(Of Decimal) From {
    3. 78,
    4. 92,
    5. 100,
    6. 37,
    7. 81
    8. }
    9. Dim average As Decimal = grades.Average() ' <----
    10. Msgbox(average)
    11. End Sub

    Visual Basic.NET 8o
    MS-SQL
    8o
    @an alle
    Vielen Dank, für euere Antwort. :)

    @EaranMaleasi
    Ich versuche beim Programmieren immer die niedrigste .NET Framework Version zu verwenden.
    Falls ich eine Funktion benötige die in einer neuen .NET Framework vorhanden ist, wechsle ich zu dieser Version!
    Jetzt arbeite ich mit v.3.5.
    Ich bin der Meinung, wenn der Code auf einer niedrigen Version läuft.
    Wieso sollte ich dann die höchste nehmen und ältere Windows Benutzer benachteiligen(wenn’s auch so geht).

    VB.NET-Quellcode

    1. Me.lblMaxSurfkosten.Text = Surfkosten.Max.ToString("c")
    2. Me.lblMinSurfkosten.Text = Surfkosten.Min.ToString("c")
    3. Me.lblDurchschnittSurfkosten.Text = Surfkosten.Average.ToString("c")
    Visual Basic.NET 8o
    MS-SQL
    8o

    Cheffboss schrieb:

    Wieso sollte ich dann die höchste nehmen und ältere Windows Benutzer benachteiligen(wenn’s auch so geht)
    Warum sollte ich mich als Programmierer kasteien und auf neue Features verzichten?
    z.B. Async/Await geht meines Wissens erst ab .Net 4.5.
    Darunter gehe ich nicht.

    Warum sollte ich Windows XP noch unterstützen, wenn es Microsoft auch nicht mehr tut?
    Warum tote Pferde reiten?
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    Das Argument fällt, jetzt wo es .NET Core 3.1 gibt, komplett auseinander. Damit kann man Anwendungen so kompilieren, dass alle benötigten Frameworkelemente direkt mitgeliefert werden, und das Programm ohne installation eines Frameworks direkt ausgeführt werden kann.

    Ich weiß, die Unterstützung für VB.NET ist im Moment bestenfalls spärlich, und der WinForms Designer steckt noch in den Kinderschuhen, dennoch braucht man im Jahre 2019 nicht noch länger an alten Dingen festhalten, wie Microsoft selbst.