private DataBaseManager() { _primary = Sqlite.LoadFromFile(); _primary.ProgressChangedEvent += OnProgressChangedEvent; _primary.ProgressFinishEvent += OnProgressFinishEvent; if (AppSettings.Instance.SqlEnabled == "true") { if (AppSettings.Instance.SqlType == "MySql" && !string.IsNullOrEmpty(AppSettings.Instance.MySqlServer)) { MySqlConnectionStringBuilder mysqlBuiler = new MySqlConnectionStringBuilder()// Database is set later in constructor! { Server = AppSettings.Instance.MySqlServer, UserID = AppSettings.Instance.MySqlUserId, Password = AppSettings.Instance.MySqlPassword, Port = (uint)AppSettings.Instance.MySqlPort, SslMode = AppSettings.Instance.MySqlSsl == "true" ? MySqlSslMode.Required : MySqlSslMode.None }; try { _secondary = new MySql(mysqlBuiler, MySql.UpdateModes.Async); // Associate events _secondary.TimeDateaUpdate += OnTimeDateaUpdate; _secondary.ProgressChangedEvent += OnProgressChangedEvent; _secondary.ProgressFinishEvent += OnProgressFinishEvent; _secondary.ConnectionChangedEvent += OnConnectionChangedEvent; _secondary.UpdateChangedEvent += OnUpdateChangedEvent; var daysInWeek = _primary.DaysInRange(StartEndWeek(DateTime.Today)[0], StartEndWeek(DateTime.Today)[1]); if (_secondary.ServerState == State.Connected) { _secondary.Push(daysInWeek); } } catch (Exception e) { Console.WriteLine(e); MessageBox.Show(e.Message); } } else if (AppSettings.Instance.SqlType == "Azure" && !string.IsNullOrEmpty(AppSettings.Instance.AzureDateSource)) { MessageBox.Show("Azure sql not implemented!"); } } }
public override List <Day> DaysInRange(DateTime a, DateTime b) { return(_primary.DaysInRange(a, b)); }