Я не могу обновить базу данных после выбора одного из элементов списка в элементе управления dropdownlist. У кого-нибудь есть идея, почему?Невозможно обновить с помощью GridView
Я получил сообщение об ошибке:
«DDL» имеет SelectedValue, который является недействительным, поскольку он не существует в списке имя items.Parameter: значение
Здесь разметка:
<asp:GridView ID="GridView1" runat="server" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="4" DataSourceID="OrdersDataSource" ForeColor="Black" GridLines="Horizontal" AutoGenerateColumns="False" CssClass="gridview" DataKeyNames="OrderId">
<Columns>
<asp:CommandField ShowEditButton="True" />
<asp:TemplateField HeaderText="Status" SortExpression="Status">
<EditItemTemplate>
<asp:DropDownList ID="ddl" runat="server" DataTextField="Status" DataValueField="Status" SelectedValue='<%# Bind("Status") %>'>
<asp:ListItem Text="Yes" Value="1"></asp:ListItem>
<asp:ListItem Text="No" Value="2"></asp:ListItem>
</asp:DropDownList>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("Status") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="OrderId" HeaderText="OrderId" InsertVisible="False" ReadOnly="True" SortExpression="OrderId" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="OrdersDataSource" runat="server" ConnectionString="<%$ ConnectionStrings:ProjectConnectionString1 %>" SelectCommand="SELECT [Status], [OrderId] FROM [Order]" UpdateCommand="UPDATE [Order] SET [Status] = @Status WHERE [OrderId] = @OrderId">
<UpdateParameters>
<asp:Parameter Name="Status" Type="String" />
<asp:Parameter Name="OrderId" Type="Int32" />
</UpdateParameters>
</asp:SqlDataSource>