相关疑难解决方法(0)

具有一个无效的SelectedValue,因为它不存在于项列表中.你怎么调试?

我有一个asp.net绑定到下拉列表的问题,我不知道如何调试.我在堆栈上查看了有关此问题的其他问题,但没有任何帮助.据我所知,它应该选择的"名称"在列表中.

<asp:DropDownList ID="dd1" runat="server" DataSourceID="ADataSource" DataTextField="Name" 
                                                    DataValueField="Name" SelectedValue='<%# Bind("Name") %>'   Width="255" 
                                                    AppendDataBoundItems="true" TabIndex="3"  Font-Size="small"  EnableViewState="true"    >
                                             <asp:ListItem Text="Select"  Value="" />
                                           </asp:DropDownList>
Run Code Online (Sandbox Code Playgroud)

以下是错误

用户代码未处理System.ArgumentOutOfRangeException消息='dd1'具有SelectedValue,该ListValue无效,因为它在项列表中不存在.参数名称:value Source = System.Web ParamName = value StackTrace:位于System.Web的System.Web.UI.WebControls.ListControl.OnDataBinding(EventArgs e)的System.Web.UI.WebControls.ListControl.PerformDataBinding(IEnumerable dataSource)中System.Web.UI.Control.DataBind上的System.Web.UI.Control.DataBindChildren()处的System.Web.UI.UI.WebControls.BaseDataBoundControl.DataBind()处的.UI.WebControls.ListControl.PerformSelect()(Boolean raiseOnDataBinding)在System.Web.UI.Control.DataBind()在System.Web.UI.Control.DataBindChildren()在System.Web.UI.Control.DataBind(布尔raiseOnDataBinding)在System.Web.UI.Control.DataBind() System.Web.UI.Control.Data上的System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)上的System.Web.UI.Control.DataBindChildren()处于System.Web.UI.Control.DataBind( System.Web.UI.WebCont上的System.Web.UI.WebControls.DetailsView.CreateChildControls(IEnumerable dataSource,Boolean dataBinding)中的System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding)System.Web.UI.DataSourceView上的System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerable data)中的System.Web.UI.WebControls.DetailsView.PerformDataBinding(IEnumerable data)中的rols.CompositeDataBoundControl.PerformDataBinding(IEnumerable data).在System.Web.UI.WebControls.DetailsView.DataBind()的System.Web.UI.WebControls.BaseDataBoundControl.DataBind()上的System.Web.UI.WebControls.DataBoundControl.PerformSelect()中选择(DataSourceSelectArguments参数,DataSourceViewSelectCallback回调)位于System.Web.UI的System.Web.UI.WebControls.GridView.OnSelectedIndexChanged(EventArgs e)的System.EventHandler.Invoke(Object sender,EventArgs e)第233行的storeUpdate.GvStoresSelect_SelectedIndexChanged(Object sender,EventArgs e). System.Web.UI.WebControls.GridView.OnBubbleEvent(对象源,System.Web.UI.WebControls.GridView.HandleEvent(EventArgs e,Boolean causeValidation,String validationGroup)中的WebControls.GridView.HandleSelect(Int32 rowIndex)EventArgs e)位于System.Web.UI.Con.RaiseBubbleEvent的System.Web.UI.WebControls.GridViewRow.OnBubbleEvent(Object source,EventArgs e)的System.Web.UI.Control.RaiseBubbleEvent(Object source,EventArgs args)上. System.Web.UI.WebControls.LinkBut​​ton.System上System.Web.UI.WebControls.LinkBut​​ton.RaisePostBackEvent(String eventArgument)的System.Web.UI.WebControls.LinkBut​​ton.OnCommand(CommandEventArgs e)中的对象源,EventArgs args) System.Web.UI上System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)的System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl,String eventArgument)中的.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument). Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)InnerException:

asp.net data-binding

7
推荐指数
2
解决办法
6万
查看次数

如何修复"'ddlAssignedTo'有一个无效的SelectedValue,因为它在项目列表中不存在

我加载了gridview,gridview有一个编辑和删除按钮.

我点击编辑,我得到,"ddlAssignedTo' has a SelectedValue which is invalid because it does not exist in the list of items. Parameter name: value

我知道我收到此错误,因为值fo ddlAssignedTo为null - ddlAssignedTo的db上没有任何内容.

我所要做的就是更新当前值.

所以,我的问题是这个,如果当前值为null,我如何为ddlAssignedTo分配一个默认值,这样如果db上当前没有值,默认值将占优势?

这是一些代码:

标记:

<asp:TemplateField HeaderText="Assigned To">
    <EditItemTemplate>
      <asp:DropDownList ID="ddlAssignedTo" runat="server" 
                        DataSourceID="SubjectDataSource"
                        DataTextField="fullname" DataValueField="empl_Id"
                        SelectedValue='<%# Bind("AssignedTo") %>'>
        <asp:ListItem Value="">--Select Name--</asp:ListItem>
      </asp:DropDownList>
    </EditItemTemplate>
    <ItemTemplate>
        <asp:Label ID="lblAssigned" runat="server" 
                   Text='<% #Bind("fullname") %>'></asp:Label>
    </ItemTemplate>
</asp:TemplateField

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
                   ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
                   SelectCommand="SELECT Distinct [rownum],[reqnum], AssignedTo, (empl_first + ' ' + empl_last) fullname, [reqrecdate], [reqrecfrom], [skillsets], [application], [hoursperweek], …
Run Code Online (Sandbox Code Playgroud)

vb.net asp.net gridview

7
推荐指数
1
解决办法
3万
查看次数

标签 统计

asp.net ×2

data-binding ×1

gridview ×1

vb.net ×1