0

我有一个加载列表框值的访问数据源。我正在尝试将参数传递给 accessdatasource,但我不确定我做错了什么。

<asp:DropDownList ID="customerName" runat="server">
    <asp:ListItem value="69" Text="Danny"></asp:ListItem>
    <asp:ListItem value="23" Text="Sarah"></asp:ListItem>
</asp:DropDownList>

<asp:AccessDataSource ID="AccessDataSource1" runat="server" DataFile="/App_Data/data.mdb" SelectCommand="SELECT * FROM table WHERE customerID='?'">

<selectparameters>
    <asp:ControlParameter Name="customerID" ControlID="customerName" PropertyName="SelectedValue" />
</selectparameters>

<asp:ListBox ID="lstCustomers" runat="server" AutoPostBack="True" 
        DataSourceID="AccessDataSource1" DataTextField="customerName" 
        DataValueField="customerID" Width="175px" Height="365px" 
            onselectedindexchanged="lstCustomers_SelectedIndexChanged"></asp:ListBox>

列表返回为空白......不知道我做错了什么!

4

1 回答 1

0

只是为了澄清..这已由 Richard Deeming 解决,但没有答案。我会在这里发布代码

通过删除 ? 周围的单引号解决了这个问题 SQL中的参数

<asp:AccessDataSource ID="AccessDataSource1" runat="server" DataFile="/App_Data/data.mdb" SelectCommand="SELECT * FROM table WHERE customerID=?">
于 2012-11-19T11:53:29.643 回答