【发布时间】:2020-12-12 12:36:34
【问题描述】:
我是 .net 世界的新手,我不明白为什么下面的代码不起作用。我有一个下拉列表,其中包含 DEPARTMENT_NAME 和值作为 DEPARTMENT_ID。我有一个gridview,它根据从下拉列表中选择的department_id 填充员工数据。我已经编写了以下代码,但 gridview 没有填充。有人可以帮助我在这里做错了什么。
protected void ddDepartments_SelectedIndexChanged(object sender, EventArgs e)
{
string connStr = ConfigurationManager.ConnectionStrings["myCon"].ConnectionString;
OracleConnection oConn = new OracleConnection(connStr);
oConn.Open();
string SqlText = "Select * from employees where department_id = :department_id";
OracleCommand cmd = new OracleCommand(SqlText, oConn);
cmd.CommandType = CommandType.Text;
OracleParameter p_department_id = new OracleParameter();
p_department_id.OracleDbType = OracleDbType.Varchar2;
p_department_id.Value = ddDepartments.SelectedItem.Value;
cmd.Parameters.Add(p_department_id);
OracleDataAdapter adapter = new OracleDataAdapter(cmd);
DataTable dtEmployees = new DataTable();
adapter.Fill(dtEmployees);
gvEmployees.DataSource = dtEmployees;
gvEmployees.DataBind();
dtEmployees.Dispose();
adapter.Dispose();
cmd.Dispose();
oConn.Close();
oConn.Dispose();
}
【问题讨论】:
-
确认参数值被正确地传递到sql并且它的值是正确的。还要检查 ddDepartments.SelectedItem.Value 不应该是 ddDepartments.SelectedValue
标签: c# asp.net .net asp.net-core asp.net-web-api