C# 是否使用listview中的多个选择填充gridview中的数据?

C# 是否使用listview中的多个选择填充gridview中的数据?,c#,asp.net,C#,Asp.net,我正在尝试使用listview中的多个选择填充gridview中的数据 这是我的gridview代码 <asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT employee.Empno, employee.Dptno, emp

我正在尝试使用listview中的多个选择填充gridview中的数据

这是我的gridview代码

<asp:SqlDataSource ID="SqlDataSource2" runat="server" 
        ConnectionString="<%$ ConnectionStrings:ConnectionString %>" 
        SelectCommand="SELECT employee.Empno, employee.Dptno, employee.Grade, employee.Employee FROM employee INNER JOIN grade ON employee.Grade = grade.Grade INNER JOIN empskill ON employee.Empno = empskill.Empno WHERE (empskill.Skillno = @Skillno)">
        <SelectParameters>
            <asp:ControlParameter ControlID="ListBox1" Name="Skillno" 
                PropertyName="SelectedValue" />
        </SelectParameters>
    </asp:SqlDataSource>

但我遇到的问题是,数据并非来自listview中所有选定的行


listview是技能列表,gridview中填充的数据是在列表框中选择的拥有这些技能的员工。因此,如果您选择了2项技能,它将显示同时拥有这两项技能的员工,而不是将这两项技能组合在一起的员工。希望这能让我的问题更清楚。

您对使用
SqlDataSource
有限制吗?我这么说是因为你要打开一个很大的虫洞。您尝试执行的操作需要自定义适配器,而且,列表框项不可序列化,因此您必须缓存它们并在自定义适配器内利用该缓存。现有查询仅适用于单个选择。您需要根据所选的ListView值动态构建Select语句,以及阻止用户选择2个以上itesm的方法。如果用户决定不从ListView中选择任何项目,那么从我所看到的情况来看,您也没有任何代码或逻辑。这就是我需要帮助的,构建select语句以显示所有被选中的员工所拥有的技能,而不是全部加在一起。