如何在文本框中显示搜索结果?
本文关键字:显示 搜索结果 文本 | 更新日期: 2023-09-27 18:11:20
我已经创建了一个表代码,并希望搜索和检索在文本框IMEI中介绍设备IMEI的答案,当我点击搜索时,我想在文本框代码中显示结果code_mck
,我想显示结果:
id Imei code_mck
1 356885021519453 830782136
2 356885021519156 948790617
3 356885021518893 715398945
4 356885021518935 567456626
5 359654022104377 557960750
最初我有一个典型的三层架构,搜索方法在数据层。我有一些问题与我的SQL查询:
public DataSet recherche(string code)
{
DataSet ds = null;
using (OleDbConnection cnn = new OleDbConnection(strConn))
{
cnn.Open();
string Oledb = "SELECT * FROM Code WHERE Imei=@IMEI";
using (OleDbDataAdapter adapter = new OleDbDataAdapter(Oledb, cnn))
{
adapter.SelectCommand.Parameters.AddWithValue("@IMEI", code);
ds = new DataSet();
adapter.Fill(ds, "Code");
}
}
return ds;
}
业务逻辑层:
namespace unlock2_buisness
{
public class code_imei
public DataSet rechercheduCode(string imei)
{
unlockDAL objetDataLayer = new unlockDAL();
if (imei == "")
throw new Exception("merci d'indique l'imei de recherche");
DataSet dt = null;
dt = objetDataLayer.recherche(imei);
return dt;
}
在我的用户层中,专门用于搜索以文本框代码显示结果的文本框没有响应,并且我没有通过提供设备IMEI来获得适当的代码,因为它应该来自表。
private void btnrechercheimei_Click(object sender, EventArgs e)
{
imeiLogic.rechercheduCode(txtimei.Text);
imeiLogic.rechercheduCode(txtcode.Text);
}
我将感激你的支持。
问题是你如何使用你的businesslogic类。
public DataSet rechercheduCode(string imei)
接受一个字符串作为输入参数并返回一个DataSet。
当你像这样调用方法时:
imeiLogic.rechercheduCode(txtimei.Text);
提供输入参数(文本框中的值),但不将返回的Dataset存储在变量中。
数据集将有一个名为Code的表,该表将保存查询的结果行,如果没有找到,则保存0行。
尽可能接近你当前的实现,我建议这样做:
private void btnrechercheimei_Click(object sender, EventArgs e)
{
// call the BLL to get a dataset
var dataSet = imeiLogic.rechercheduCode(txtimei.Text);
// get our table in the dataset
var codeTable = dataSet.Tables["Code"]; // table
// check if there was a row returned
if (codeTable.Rows.Count > 0)
{
var row = codeTable.Rows[0]; // pick the first one
txtcode.Text = row["code_mck"].ToString(); // update our textbox
}
// Add handling for 0 rows and/or more than 1 rows returned
}