none
mehrwertige List(Of) erstellen RRS feed

  • Frage

  • Hallo Leute,

    ich möchte gerne eine mehrwertige List(Of) erstellen.

    Beispiel:

    Public Structure struktLogbuch
    Dim MdNr as Long
    Dim StArt as String
    Dim Zeitraum as String
    Dim Übermittlung as Date
    End Structure
    
    Public Logbuch As New List(Of struktLogbuch)

    Jetzt möchte ich in einem Verzeichnis alle Dateien auslesen und diese in der List(Of) ablegen.

    Dim sFile as String
    dim MdNr as long
    dim StArt as String
    dim Zeitraum as String
    Dim Übermittlung as Date
    
    sFile = "10000 UStVA-05-2014.pdf"
    
    MdNr = 10000
    StArt ="UStVA"
    Zeitraum = "05-2014"
    Übermittlung= sFile.CreationTime
    

    Das Auslesen der Dateien und das Extrahieren der Werte aus dem Dateinamen bzw. des Dateidatums ist nicht das Problem.

    Das Problem ist jetzt lediglich, wie ich diese gesamte Wert in der List(Of) ablege, damit ich diese mit LinQ über eine SQL-Anweisung filtern kann. Ich möchte nämlich alle Dateien als Logbuch in einem Listview auflisten, die der Anwender jetzt im nachhein einfach filtern kann.

    Ich hoffe ich konnte das Problem darstellen und jemand kann mir helfen.

    Vielen Dank im Voraus.

    Gruß Ahmed


    Samstag, 21. Februar 2015 17:14

Antworten

  • Hi Ahmed,
    nachfolgend eine kleine Konsolendemo zu Deiner Frage:

    Module Module2
    
      Public Logbuch As New List(Of struktLogbuch)
      Sub main()
        ' Liste füllen
        For i = 1 To 9
          Dim s1 As New struktLogbuch
          s1.MdNr = i
          s1.StArt = "UStVA"
          s1.Zeitraum = "05-2014"
          s1.Übermittlung = Now
          Logbuch.Add(s1)
        Next
        ' LinQ
        Dim res = From itm In Logbuch Where itm.MdNr > 5
        ' Ergebnismenge analysieren
        For Each l In res
          Console.WriteLine(l.MdNr)
        Next
        ' Warten
        Console.ReadKey()
      End Sub
    End Module
    
    Public Structure struktLogbuch
      Dim MdNr As Long
      Dim StArt As String
      Dim Zeitraum As String
      Dim Übermittlung As Date
    End Structure

    --
    Peter

    • Als Antwort markiert Ahmed Martens Sonntag, 22. Februar 2015 07:28
    Samstag, 21. Februar 2015 17:41

Alle Antworten

  • Hi Ahmed,
    nachfolgend eine kleine Konsolendemo zu Deiner Frage:

    Module Module2
    
      Public Logbuch As New List(Of struktLogbuch)
      Sub main()
        ' Liste füllen
        For i = 1 To 9
          Dim s1 As New struktLogbuch
          s1.MdNr = i
          s1.StArt = "UStVA"
          s1.Zeitraum = "05-2014"
          s1.Übermittlung = Now
          Logbuch.Add(s1)
        Next
        ' LinQ
        Dim res = From itm In Logbuch Where itm.MdNr > 5
        ' Ergebnismenge analysieren
        For Each l In res
          Console.WriteLine(l.MdNr)
        Next
        ' Warten
        Console.ReadKey()
      End Sub
    End Module
    
    Public Structure struktLogbuch
      Dim MdNr As Long
      Dim StArt As String
      Dim Zeitraum As String
      Dim Übermittlung As Date
    End Structure

    --
    Peter

    • Als Antwort markiert Ahmed Martens Sonntag, 22. Februar 2015 07:28
    Samstag, 21. Februar 2015 17:41
  • Hallo Peter,

    vielen Dank für deine Hilfe.

    Ich werde das gleich heute noch ausprobieren.

    Gruß Ahmed

    Sonntag, 22. Februar 2015 07:29