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 に答える