如何从SQL Server数据库表列中获取Male或Female并在转发器控件中显示记录?

时间:2019-06-23 02:52:05

标签: c# asp.net sql-server

ASP.NET,C#和SQL Server数据库。

我有一个带有Students列的表gender,照片保存在另一个表中。 在页面上,我有一个下拉控件,它已经绑定了性别值,还有一个按钮。

我想做的是:如果用户从下拉控件中选择男性或女性,然后单击按钮,则所有选择的照片和记录都应显示在转发器控件中。

我尝试对查询使用存储过程:

select A.*, B.*  
from tblStudents A 
cross apply
    (select top 1 * 
     from tbl studentImages B 
     where A.Gender = @Gender and B.ImageID = A.ImageID

但是它显示所有记录,而不是仅显示所选记录。

有人可以帮忙吗?

后面的代码:

protected void btnsearch_click(onject sender, EventArgs)
{  
      Int64 Gender = Convert.Toint64(Request.Querystring[Gender]);

       String S = ConfigurationManager.onnectionStrings["DBST"]ConnectionStrings;

       using(SqlCommand con= new SqlCommand(CS))
       {
             SqlCommand cmd = new SqlCommand("SP_Data",con)
             cmd.commandType = commandType.StoredProcedure;

             con.Open();

             SqlDataAdapter ada = new SqlDataAdapter(cmd)

             DataTable dt = new DataTable();
             ada.Fill(dt);

             if(dt.Rows.Count !=0)
             {
                 rpterGender.DataSource = dt;
                 rpterGender.DataBind();
             }
        }
    }
}

1 个答案:

答案 0 :(得分:0)

您需要在查询中使用联接。

select A.*, B.*  
from tblStudents A 
join tblstudentImages B on B.ImageID = A.ImageID
where A.Gender = @Gender