【发布时间】:2016-03-19 08:45:43
【问题描述】:
在我的下拉列表控件中选择一个列表项后,我似乎无法更新数据库。有人知道为什么吗?
我收到此错误消息:
'ddl' 有一个无效的 SelectedValue,因为它不存在于项目列表中。参数名称:值
这是标记:
<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>
【问题讨论】:
标签: c# html asp.net gridview data-binding