2014-09-30 88 views
0

我现在有这从一个SqlDataSource从填充SQL Server表称为“用户”的GridView和asp.net下拉列表,选择添加所有

select s.id, s.Forename + ' ' + s.Surname as Name from User s 
where s.Active = '1' 
Order by Name 

然后我有这显示基于结果的gridview的一个下拉列表从下拉列表选择的用户的ID

我想补充一个“选择所有用户”选项,在下拉菜单,使所有用户检索并在GridView显示

的GridView SQL

select sup.id, p.plan_name, sup.document_name, sup.Expiry_Date from 
User_Plan sup 
join Plan_Type p on p.id = sup.Plan_Type_ID 

where sup.User_ID = @sid and sup.Active = '1' and sup.Expiry_Date >= GETDATE() 

这里最好的办法是什么?

您可以添加一些下拉列表,以便@sid将带回所有结果吗?

干杯,

回答

0

尝试像这样

插入在下拉列表中选择--Select All Users--以0指数(SID)和

DropDown.Items.Insert(0, new ListItem("--Select All Users--")); 

的SQL查询

select sup.id, p.plan_name, sup.document_name, sup.Expiry_Date from 
User_Plan sup 
join Plan_Type p on p.id = sup.Plan_Type_ID 

where sup.User_ID = Case When @sid=0 Then sup.User_ID else @sid end 
and sup.Active = '1' and sup.Expiry_Date >= GETDATE() 

我假设DataValuefield的下拉是User_Id并且已通过SQL查询,以上将选择所有用户,如果@sid为0或仅用户bas编号@sid

0

试试这个

yourDropDown.Items.Insert(0, new ListItem("Select ALl", "2")); 

这里2是该项目的价值,所以你可以给你希望,将带来的所有记录从数据库中的任何值。

相关问题