Я хочу вставить проверенное значение из gridview и некоторое значение из сеанса в новую таблицу данных, но возникает ошибка,
Я попытался присвоить значение из GridView в и сеанс в переменную, а затем передать их в DBConnect.cs, чтобы вставить в новый таблица данных, но есть ошибка, когда я запускаю код.
Что я уже пробовал:
protected void btSave_Click(object sender, EventArgs e) { Students student = (Students)Session["student"]; foreach (GridViewRow row in gvGetCourse.Rows) { for (int i = 0; i < gvGetCourse.Rows.Count-1; i++) { int StudId = student.StudentID; // Exception occur here!! int CourId = Convert.ToInt32(gvGetCourse.Rows[i].Cells[0].Text); DateTime now = DateTime.Now; int Courfee = Convert.ToInt32(gvGetCourse.Rows[i].Cells[2].Text); gvGetCourse.DataSource = DbConnect.ShowCourse(StudId,CourId, now, Courfee); } } } // the code below is in a different class public static DataTable ShowCourse(int StudId, int CourId, DateTime now, int Courfee) { DataTable dt = new DataTable(); string query = "Insert Into CourseTaken" + "(StudentID,CourseID,Date,AtmPaid)values(@StudId,@CourID,@now,@Courfee)"; try { cn.Open(); SqlCommand Cmd = new SqlCommand(query, cn); Cmd.Parameters.AddWithValue("@StudID", StudId ); Cmd.Parameters.AddWithValue("@CourID", CourId); Cmd.Parameters.AddWithValue("@now", now); Cmd.Parameters.AddWithValue("@Courfee", Courfee); Cmd.ExecuteNonQuery(); } catch (Exception E) { throw new Exception("Database Exception: " + E.Message); } finally { cn.Close(); } return dt; }
RickZeeland
Мне кажется, что переменная сеанса "студент" неверна, см.: https://msdn.microsoft.com/en-us/library/ms178581.aspx
Patrice T
И у вас есть план, чтобы сказать нам, какое сообщение об ошибке и положение ?