-1
我有一个从列表中检索数据的问题,我必须获取每个选定记录的信息,并且我可以这样做,但我在列表中有这些数据,我需要它在文本框,我有我的应用程序工作类,这是我的数据层:从列表中检索值<>
public List<Cajas> cajas_upd_cons_caja_detalle(string clienteCodigo, string cajaCodigo, int cajaNumero)
{
List<Cajas> ListCaj_x_Cod_CajNum = new List<Cajas>();
string storedProcedure = "CAJAS_UPD_CONS_CAJA_DETALLE"; //stored procedure
using (DbConnection con = dpf.CreateConnection())
{
con.ConnectionString = conStr;
using (DbCommand cmd = dpf.CreateCommand())
{
cmd.Connection = con;
cmd.CommandText = storedProcedure;
cmd.CommandType = CommandType.StoredProcedure;
DbParameter param1 = cmd.CreateParameter();
param1.DbType = DbType.String;
param1.ParameterName = "CLIENTE_CODIGO"; //param
param1.Value = clienteCodigo.Replace(" ", "");
cmd.Parameters.Add(param1);
DbParameter param2 = cmd.CreateParameter();
param2.DbType = DbType.String;
param2.ParameterName = "CAJA_CODIGO"; //param
param2.Value = cajaCodigo.Replace(" ", "");
cmd.Parameters.Add(param2);
DbParameter param3 = cmd.CreateParameter();
param3.DbType = DbType.String;
param3.ParameterName = "CAJA_NUMERO"; //param
param3.Value = cajaNumero;
cmd.Parameters.Add(param3);
con.Open();
cmd.ExecuteNonQuery();
using (DbDataReader dr = cmd.ExecuteReader())
{
while (dr.Read())
{
try
{
//THIS IS MY CLASS
Cajas caja = new Cajas(); //
caja.CajaContenido = dr["CONTENIDO"].ToString();
caja.CajaEstado = dr["EST"].ToString();
caja.FecEmisionDoc = Convert.ToDateTime(dr["EMISION"].ToString());
caja.FecCaducidDoc = Convert.ToDateTime(dr["CADUCIDAD"].ToString());
caja.CajaUbi1 = dr["UBI1"].ToString();
caja.CajaUbi2 = dr["UBI2"].ToString();
ListCaj_x_Cod_CajNum.Add(caja);
}
catch (System.InvalidCastException)
{ }
}
}
}
}
return ListCaj_x_Cod_CajNum;
}
这是我的介绍类:
protected void Page_Load(object sender, EventArgs e)
{
UpdCadDet_limpiarCampos();
if (!IsPostBack)
{
clienteCodigo = Request.QueryString["cliCod"];
cajaCodigo = Request.QueryString["cajCod"];
cajaNumero = Request.QueryString["cajNum"];
lblUpdCajDet_CliCod.Text = clienteCodigo;
lblUpdCajDet_CajCod.Text = cajaCodigo;
lblUpdCajDet_CajNum.Text = cajaNumero;
//this is only for testing
List<Cajas> cajastest = cajaUpd_BL.cajas_upd_cons_caja_detalle (clienteCodigo, cajaCodigo, Convert.ToInt32(cajaNumero));
}
}
若y调试应用程序,我可以看到的值检索从数据库,但我的问题是我怎样才能让他们在我的演讲课(在GUI中)。
我希望有人请帮助我。
问候
旁注:你正在执行查询两次,'的ExecuteNonQuery '和'ExecuteReader'。我建议删除'ExecuteNonQuery'调用。 – Caramiriel
这取决于你。你想如何展示它们?最直接的想法是使用数据网格(表格格式)。这里是你的链接:http://www.c-sharpcorner.com/uploadfile/anjudidi/example-of-datagrid-in-asp-net/ – Sparrow
谢谢Caramiriel 我测试,因为我有一个错误,我可以不检索数据,但该部分已解决。我会纠正这一点。 谢谢Feryal, 但是这个信息来自其他页面gridview,它是每个记录的细节,因为以下内容将会修改记录 –