Imports System.Data.Common Imports System.Data.SQLite Public Class LibraryRepository Friend Shared Async Function GetLibraries() As Task(Of List(Of String)) Dim con = DB.getConnection Dim cmd As New SQLiteCommand(Nothing, con) Dim reader As DbDataReader Dim result As New List(Of String) 'Pfade aus Datenbank auslesen Await con.OpenAsync() cmd.CommandText = "SELECT p_path FROM t_paths ORDER BY p_path" reader = Await cmd.ExecuteReaderAsync Do While Await reader.ReadAsync result.Add(CStr(reader("p_path"))) Loop con.Close() Return result End Function Friend Shared Async Sub AddLibraries(paths As List(Of String)) Dim con = DB.getConnection Dim cmd As New SQLiteCommand(Nothing, con) cmd.Parameters.Add("@path", DbType.String) Await con.OpenAsync() cmd.CommandText = "INSERT INTO t_paths (p_path) VALUES (@path)" For Each p As String In paths cmd.Parameters("@path").Value = p cmd.ExecuteNonQuery() Next con.Close() End Sub Friend Shared Async Sub DeleteLibraries(paths As List(Of String)) Dim con = DB.getConnection Dim cmd As New SQLiteCommand(Nothing, con) cmd.Parameters.Add("@path", DbType.String) Await con.OpenAsync() cmd.CommandText = "DELETE FROM t_paths WHERE p_path = @path" For Each p As String In paths cmd.Parameters("@path").Value = p cmd.ExecuteNonQuery() Next con.Close() End Sub End Class