none
LINQ-Ausdruck gesucht RRS feed

  • Frage

  • Hallo,
    welche Möglichkeit gibt es, die Schleife zum Erzeugen einer Liste vom Typ DataRow aus den Rows der BindingSource (eine Tabelle und einen Filter) und das Sortieren dieser Liste mit LINQ zusammenzufassen? Ziel ist es, das Erstellen der Liste wegzulassen. 

    Alexander

    List<DataRow> rows = new List<DataRow>();                   
    for (int i = this.testBindingSource.Count - 1; i >= 0; i--)
    {
      rows.Add(((DataRowView)this.testBindingSource[i]).Row);
    }
    
    row = (from r in rows orderby r["END"] descending select r).FirstOrDefault();
    

    Dienstag, 7. August 2018 13:32

Antworten

  • Hallo Alexander,

    sowas?

    ///...
    this.testBindingSource.Select(t => t as DataRowView)
        .OrderByDescending(t => t.Name); //Name als Sortierkriterium nur als Beispiel
    ///...


    Viele Grüße Holger M. Rößler


    Dienstag, 7. August 2018 15:00
  • Hi Alexander,
    Du kannst das so ohne separate Liste machen:

          DataRow row = (from drv in testBindingSource.List.Cast<DataRowView>() orderby drv["END"] descending select drv).FirstOrDefault().Row;


    --
    Viele Grüsse
    Peter Fleischer (ehem. MVP)
    Meine Homepage mit Tipps und Tricks

    • Als Antwort vorgeschlagen Peter Fleischer Donnerstag, 9. August 2018 16:47
    • Als Antwort markiert AlexanderRi Freitag, 10. August 2018 15:40
    Donnerstag, 9. August 2018 16:47

Alle Antworten

  • Hallo Alexander,

    sowas?

    ///...
    this.testBindingSource.Select(t => t as DataRowView)
        .OrderByDescending(t => t.Name); //Name als Sortierkriterium nur als Beispiel
    ///...


    Viele Grüße Holger M. Rößler


    Dienstag, 7. August 2018 15:00
  • Hi Alexander,
    Du kannst das so ohne separate Liste machen:

          DataRow row = (from drv in testBindingSource.List.Cast<DataRowView>() orderby drv["END"] descending select drv).FirstOrDefault().Row;


    --
    Viele Grüsse
    Peter Fleischer (ehem. MVP)
    Meine Homepage mit Tipps und Tricks

    • Als Antwort vorgeschlagen Peter Fleischer Donnerstag, 9. August 2018 16:47
    • Als Antwort markiert AlexanderRi Freitag, 10. August 2018 15:40
    Donnerstag, 9. August 2018 16:47