Развернуть проблему gridview
Когда я обращаюсь к базе данных перед привязкой gridview, gridview никогда не привязывает снова здесь некоторый код:
void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
date.Date = DateTime.Now;
string mode = Request.Params["mode"].ToString().ToLowerInvariant();
lblPatientName.Text= Session["PatientName"].ToString();
switch (mode)
{
case "new":
{
Page.Title = "Add New Patient Visit";
Session["visitID"] = System.Guid.NewGuid();
//get basic data (countrycode,cityCode,districtCode,areaCode) from patientdata table
SqlParameter pra = new SqlParameter("@Patientid", Session["PatientID"].ToString());
SqlDataReader dr = SqlHelper.ExecuteReader(ConfigurationManager.ConnectionStrings["NetCareConnectionString"].ConnectionString,
"PatientPrescriptionInsertPrepare", pra);
if (dr.Read())
{
SqlParameter[] prm = new SqlParameter[7];
prm[0] = new SqlParameter("@visitID", Session["visitID"].ToString());
prm[1] = new SqlParameter("@Patientid", Session["PatientID"].ToString());
prm[2] = new SqlParameter("@Specialization", Session["special"].ToString());
prm[3] = new SqlParameter("@countrycode", dr["CountryCode"].ToString());
prm[4] = new SqlParameter("@cityCode", dr["CityCode"].ToString());
prm[5] = new SqlParameter("@districtCode", dr["DistrictCode"].ToString());
prm[6] = new SqlParameter("@areaCode", dr["AreaCode"].ToString());
SqlHelper.ExecuteNonQuery(CommandType.StoredProcedure, "PreparePrescrption", prm);
}
}
break;
}
}
}
когда я использую событие для привязки сетки, ничего не происходит, когда я удаляю верхний код, там все работает нормально:
protected void btnAdd_Click(object sender, EventArgs e)
{
SqlParameter [] prm = new SqlParameter[3];
prm[0] = new SqlParameter("@visitID", Session["visitID"].ToString());
prm[1] = new SqlParameter("@Patientid", Session["PatientID"].ToString());
prm[2] = new SqlParameter("@examinationcode", Session["Examinationcode"].ToString());
SqlHelper.ExecuteNonQuery(CommandType.StoredProcedure, "PatientExaminations_insert", prm);
gvParientInvs.DataBind();
}
1 ответ
Вы должны вызвать метод DataBind ASPxGridView, чтобы заставить сетку извлекать данные из базового источника данных. Кроме того, если вы устанавливаете DataSource ASPxGridView во время выполнения, вы должны делать это при каждом запросе к серверу, как это объясняется в
Почему подкачка страниц (сортировка, группировка, фильтрация) может не работать в ASPxGridView?
статья.