Обновление GridView из универсального обработчика
У меня проблемы с обновлением вида сетки из Общего обработчика...
Универсальный обработчик: Универсальный обработчик используется в функции загрузки DropZone, т. Е. Когда пользователь помещает документ в зону сброса, документ сохраняется в папке сервера и его необходимая информация успешно сохраняется в базе данных.
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = "InsertDocument";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@DocName", fName.ToString());
cmd.Parameters.AddWithValue("@DocPath", "~/Documents/" + fileName.ToString());
cmd.Parameters.Add("@Data", SqlDbType.VarBinary, -1).Value = DBNull.Value;
cmd.Parameters.AddWithValue("@UploadedBy", id.ToString());
cmd.Parameters.AddWithValue("@DateCreated", DateTime.Now);
cmd.Parameters.AddWithValue("@DateModified", DateTime.Now);
cmd.Parameters.AddWithValue("@DepartmentID", 1);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
context.Response.Write(fileName);
Домашняя страница: после вставки записи в базу данных я перехожу из Общего обработчика на Домашнюю страницу, где GridView используется для извлечения и просмотра записей.
using (SqlConnection conn = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "GetDocs";
cmd.Parameters.AddWithValue("@DeptID", "1");
cmd.Connection = conn;
using (SqlDataAdapter da = new SqlDataAdapter(cmd))
{
DataSet ds = new DataSet();
conn.Open();
da.Fill(ds);
conn.Close();
if (ds.Tables[0].Rows.Count > 0)
{
this.GridView1.DataSource = ds.Tables[0];
this.GridView1.DataBind();
}
}
}
}
Меня удивляет тот факт, что набор данных заполнен всеми записями, но в сетчатом представлении не отображаются записи, которые были вставлены перед переходом на домашнюю страницу.
Но когда я обновляю страницу с помощью F5, GridView отображает ту запись преступника, которая ранее не была видна.
Пожалуйста, укажите мне, где я ошибаюсь?