public static async void AddFilterTableAsync(string[] genres, FilterTable filterTable) { string dbpath = Path.Combine(ApplicationData.Current.LocalFolder.Path, "moviesdatabase.db"); using (SqliteConnection db = new SqliteConnection($"Filename={dbpath}")) { foreach (var genre in genres) { db.Open(); SqliteCommand insertCommand = new SqliteCommand(); insertCommand.Connection = db; insertCommand.CommandText = string.Format("INSERT OR REPLACE INTO {0} VALUES (@data);", filterTable.ToString()); insertCommand.Parameters.AddWithValue("@data", genre.Trim()); await Task.Run(() => insertCommand.ExecuteReader()); db.Close(); } } }
public static List <string> GetFilterNames(FilterTable filter) { List <string> categories = new List <string>(); string dbpath = Path.Combine(ApplicationData.Current.LocalFolder.Path, "moviesdatabase.db"); using (SqliteConnection db = new SqliteConnection($"Filename={dbpath}")) { db.Open(); SqliteCommand selectCommand = new SqliteCommand (string.Format("SELECT * from {0}", filter.ToString()), db); SqliteDataReader query = selectCommand.ExecuteReader(); string movie; while (query.Read()) { movie = query.GetString(0); categories.Add(movie); } db.Close(); } categories.Sort(); return(categories); }