Моя форма становится все заморозить и закрыть на выполнение
Здравствуйте, ребята, я столкнулся с другой проблемой, которая заключается в том, что
my form getting freeze and close on onload please check my code and suggest me the solution Thanks in advance What I have tried: <pre>con_string.ConnectionString = @"Provider = Microsoft.ACE.OLEDB.12.0;Data Source =|DataDirectory|\Restaurant.accdb;Persist Security Info=False"; con_string.Open(); DataSet dsa2 = new DataSet(); DataTable dt2 = new DataTable(); dsa2.Tables.Add(dt2); OleDbDataAdapter da2 = new OleDbDataAdapter(); da2 = new OleDbDataAdapter(@"SELECT column2," + "Sum(MediumVal) As [Dine In] " + "Sum(LargeVal) As [Deliery], " + "Sum(RoyalVal) As [Take Away], " + "From ( " + "SELECT " + "column2 As [column2]" + ",Switch(column3 like 'DineIn%', 1,True,0) As [MediumVal] " + ",Switch(column3 like 'Delivery%',1,True,0) As [LargeVal], " + ",Switch(column3 like 'TakeAway%', 1,True,0) As [RoyalVal] " + " FROM Total " + " Where [Date] between #" + System.DateTime.Now.ToString("MM/dd/yyyy") + "# AND #" + System.DateTime.Now.AddDays(1).ToString("MM/dd/yyyy") + "# ", con_string); MessageBox.Show(@"SELECT column2," + "Sum(MediumVal) As [Dine In] " + "Sum(LargeVal) As [Deliery], " + "Sum(RoyalVal) As [Take Away], " + "From ( " + "SELECT " + "column2 As [column2]" + ",Switch(column3 like 'DineIn%', 1,True,0) As [MediumVal] " + ",Switch(column3 like 'Delivery%',1,True,0) As [LargeVal], " + ",Switch(column3 like 'TakeAway%', 1,True,0) As [RoyalVal] " + " FROM Total " + " Where [Date] between #" + System.DateTime.Now.ToString("MM/dd/yyyy") + "# AND #" + System.DateTime.Now.AddDays(1).ToString("MM/dd/yyyy") + "#"); da2.Fill(dt2); dataGridView1.DataSource = dt2; con_string.Close(); dataGridView1.Columns[0].Width = 286; dataGridView1.Columns[1].Width = 180; dataGridView1.Columns[2].Width = 180; dataGridView1.Columns[3].Width = 180; dataGridView1.Columns[4].Width = 180; dataGridView1.Columns[5].Width = 180; int sum = 0; for (int i = 0; i < dataGridView1.Rows.Count; ++i) { sum += Convert.ToInt32(dataGridView1.Rows[i].Cells[1].Value); sum += Convert.ToInt32(dataGridView1.Rows[i].Cells[2].Value) + Convert.ToInt32(dataGridView1.Rows[i].Cells[3].Value); dataGridView1.Rows[i].Cells[0].Value = sum; sum = 0; } MessageBox.Show(y); for (int i = 1; ei < dataGridView1.Columns.Count; i++) { double sum = 0; for (int j = 0; j < dataGridView1.Rows.Count; j++) { sum += Convert.ToDouble(dataGridView1.Rows[[j],[i]]); } dataGridView1.Rows[dataGridView1.Rows.Count].Cells[i].Value = sum.ToString(); } dataGridView1.Columns[4].Width = 180;
cvogt61457
Вы не даете нам никакой информации, чтобы определить, в чем проблема.
Нам нужно больше кода.
Где он замерзает?
Запустите отладчик и посмотрите, на какой строке происходит замораживание выполнения.
Member 9983063
здесь я получаю ошибку da2.Fill(dt2);
Peter_in_2780
Я готов поспорить, что у вас есть опечатка где-то в этой огромной строке запроса.
CHill60
Виртуальная 5
(Я не принимаю Пари)
CHill60
Используйте параметризованный запрос, а не конкатенацию, и вы можете обнаружить, что ваша проблема исчезла
Member 9983063
я пробовал разными способами, но это все равно дало мне ошибку
Karthik_Mahalingam
Используйте кнопку ответа, чтобы оставлять комментарии. Так что пользователь получает уведомление и отвечает на ваш текст
Member 9983063
братан можешь ли ты преобразовать этот код в параметризованный код пожалуйста