private void Storyboard_Completed(object sender, EventArgs e) { var r = CheckConnection(); if (r == ConnectionState.OK) { SignInUser w = new SignInUser(true); App.Current.MainWindow = w; w.Show(); this.Close(); } else if (r == ConnectionState.NoDB) { //NoDB string s = ""; SqlConnection con = new SqlConnection(BaseDataBase.ConnectionStringMaster); SqlCommand com = new SqlCommand(@"select SUBSTRING(physical_name, 1, CHARINDEX(N'master.mdf',Lower(physical_name))- 1) from [master].sys.master_files where database_id = 1 and file_id = 1" , con); try { con.Open(); s = com.ExecuteScalar().ToString(); } catch { MyMessageBox.Show("حدث خطأ عند انشاء قاعدة البيانات\nيرجى مراجعة فريق الدعم"); return; } finally { con.Close(); } BackgroundWorker bw = new BackgroundWorker(); bw.WorkerSupportsCancellation = true; bw.RunWorkerCompleted += bw_RunWorkerCompleted; bw.DoWork += bwBackup_DoWork; bw.RunWorkerAsync(s); w = new LoadingWindow("اعداد قاعدة البيانات"); w.Closing += w_Closing; w.ShowDialog(); } else { //NoSql MyMessageBox.Show("خطأ في الاتصال بقاعدة البيانات\nيجب تشغيل مخدم قاعدة البيانات\nأو تنصيبه من جديد"); this.Close(); } }
private void bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { canCancel = true; w.Close(); if (e.Cancelled) { MyMessageBox.Show("حدث خطأ عند انشاء قاعدة البيانات\nيرجى مراجعة فريق الدعم"); this.Close(); } else { SignInUser siu = new SignInUser(true); App.Current.MainWindow = siu; siu.Show(); this.Close(); } }