private void frmMain_Load(object sender, EventArgs e) { string localAppFolder = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + "\\Personal TV Organiser"; _dbManager.DataSource = localAppFolder + "\\db.sqlite"; if (!File.Exists(localAppFolder + "\\db.sqlite")) { if (!Directory.Exists(localAppFolder)) { Directory.CreateDirectory(localAppFolder); } try { _dbManager.CreateDatabase(); _dbManager.InitializeConnection(); _dbManager.OpenConnection(); _dbManager.BeginTransaction(); InitializeDatabase(); _dbManager.Commit(); } catch (Exception ex) { MessageBox.Show("There was a problem creating the database"); } finally { if (_dbManager.TheTransaction != null) { _dbManager.Rollback(); } _dbManager.CloseConnection(); } } else { prgMain.Value = 0; prgMain.Visible = true; lblStatus.Visible = true; lblStatus.Text = "Getting Updates..."; _dbManager.InitializeConnection(); bgwUpdate.RunWorkerAsync(); StartTimer(); } try { _dbManager.OpenConnection(); _favourites = _dbManager.GetFavourites(); } catch (Exception ex) { MessageBox.Show("Couldn't read favoutites"); } finally { _dbManager.CloseConnection(); } PopulateUpcomingEpisodes(); PopulateMissedEpisodes(); }