Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 按姓氏搜索Access数据库_C#_Search_Webforms - Fatal编程技术网

C# 按姓氏搜索Access数据库

C# 按姓氏搜索Access数据库,c#,search,webforms,C#,Search,Webforms,我无法通过搜索按钮转到在另一个web窗体上创建的gridview。下面是我正在使用的代码,我已经尝试了try/catch代码,这给了我错误 这里是我的代码,唯一的问题是当我输入姓氏,点击搜索时,页面什么也不做。它不会转到下一页并显示在gridview上 OleDbConnection con = new OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0; Data Source=PayrollSystem_DB.mdb"); con.Open()

我无法通过搜索按钮转到在另一个web窗体上创建的gridview。下面是我正在使用的代码,我已经尝试了try/catch代码,这给了我错误

这里是我的代码,唯一的问题是当我输入姓氏,点击搜索时,页面什么也不做。它不会转到下一页并显示在gridview上

OleDbConnection con = new OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0; Data Source=PayrollSystem_DB.mdb");
con.Open();
string strqrySearch = "SELECT * FROM tblPersonnel where LastName = @LastName";
OleDbCommand com = new OleDbCommand(strqrySearch, con);
com.Parameters.AddWithValue("strqrySearch", txtSearchName.Text.Trim());
OleDbDataReader dr = com.ExecuteReader();

string strFname = "";
string strPayrate = "";
string strStartdate = "";
string strEnddate = "";
while (dr.Read())
{
    strFname = dr["FirstName"].ToString();
    strPayrate = dr["PayRate"].ToString();
    strStartdate = dr["StartDate"].ToString();
    strEnddate = dr["EndDate"].ToString();
    Response.Redirect("frmViewPersonnel.aspx");
}

dr.Close();
con.Close();
替换

com.Parameters.AddWithValue("strqrySearch", txtSearchName.Text.Trim());
按这条线

com.Parameters.AddWithValue("@LastName", txtSearchName.Text.Trim());

这是因为您已将Response.Redirect放在dr.Read()循环中,而DataReader中没有记录。如果仍然希望将其重定向到下一页,则不要在while循环中写入response.redirect。在OleDB中,参数的名称无关紧要。它按索引进行。我会使用回发url重定向吗?我相信我被要求不使用回发url。因此,我需要将重发地址移动到另一个位置。谢谢sohail.hussain.dyn,我为什么要放@lastname