protected void query_Click(object sender, EventArgs e)
{
string ls_palno, ls_bar_code;
ls_bar_code = this.tb_bar_code.Text.Trim(); IDAL objDAL = DALFactory.GetDBO();
objDAL.Open();
string cmdText = "select palno from barcodeitem where bar_code=@BAR_CODE";
BLL.DAL.Parameter[] objParameter = { new BLL.DAL.Parameter("@bar_code", ls_bar_code) };
DataSet objSet = objDAL.DataAdapter(CommandType.Text, cmdText, "barcodeitem", objParameter); ls_palno = objSet.Tables["barcodeitem"].Rows[0]["palno"].ToString().Trim();
objDAL.Close();
this.lb_palno.Text = ls_palno;
倒数第三行ls_palno
那一行显示在位置0处没有返回行不知道是为什么 没有取到值 请大侠指点。数据库里有数据的。而且是唯一一条值。
{
string ls_palno, ls_bar_code;
ls_bar_code = this.tb_bar_code.Text.Trim(); IDAL objDAL = DALFactory.GetDBO();
objDAL.Open();
string cmdText = "select palno from barcodeitem where bar_code=@BAR_CODE";
BLL.DAL.Parameter[] objParameter = { new BLL.DAL.Parameter("@bar_code", ls_bar_code) };
DataSet objSet = objDAL.DataAdapter(CommandType.Text, cmdText, "barcodeitem", objParameter); ls_palno = objSet.Tables["barcodeitem"].Rows[0]["palno"].ToString().Trim();
objDAL.Close();
this.lb_palno.Text = ls_palno;
倒数第三行ls_palno
那一行显示在位置0处没有返回行不知道是为什么 没有取到值 请大侠指点。数据库里有数据的。而且是唯一一条值。
首先看看objSet.Tables["barcodeitem"]有没有取到值?
如果有,再看看有palno这个字段嘛?
{
string ls_palno, ls_bar_code;
ls_bar_code = this.tb_bar_code.Text.Trim(); IDAL objDAL = DALFactory.GetDBO();
objDAL.Open();
string cmdText = "select palno from barcodeitem where bar_code=@BAR_CODE";
BLL.DAL.Parameter[] objParameter = { new BLL.DAL.Parameter("@BAR_CODE", ls_bar_code) };
DataSet objSet = objDAL.DataAdapter(CommandType.Text, cmdText, "barcodeitem", objParameter); ls_palno = objSet.Tables["barcodeitem"].Rows[0]["palno"].ToString().Trim();
objDAL.Close();
this.lb_palno.Text = ls_palno;
protected void query_Click(object sender, EventArgs e)
{
string ls_palno, ls_bar_code;
ls_bar_code = this.tb_bar_code.Text.Trim(); IDAL objDAL = DALFactory.GetDBO();
objDAL.Open();
string cmdText = "select palno from barcodeitem where bar_code=@BAR_CODE";
BLL.DAL.Parameter[] objParameter = { new BLL.DAL.Parameter("@BAR_CODE", ls_bar_code) };
DataSet objSet = objDAL.DataAdapter(CommandType.Text, cmdText, "barcodeitem", objParameter);
//出现这个问题,说明objSet是null值
ls_palno = objSet.Tables[0].Rows[0]["palno"].ToString().Trim();
objDAL.Close();
this.lb_palno.Text = ls_palno;
在这一行前面加一行。
int i = objSet.Tables["barcodeitem"].Rows.Count;
看看i的值,如果是零,就说明没有取到值啊。
2.看看参数可赋值进去了,在看看你这个参数条件数据库中是否有
3.objSet 是否有 barcodeitem表
里面有数据吗?
先判断一下DataSet中的数据表是否存在数据~if( objSet.Tables.Rows.Count == 0 ){
//未发现任何数据.
}else{
ls_palno = objSet.Tables["barcodeitem"].Rows[0]["palno"].ToString().Trim();
this.lb_palno.Text = ls_palno;
}