总是提示错误""ddlcity"有一个无效 SelectedValue,因为它不在项目列表中。"

问题描述

执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.ArgumentOutOfRangeException:“ddlcity”有一个无效SelectedValue,因为它不在项目列表中。参数名:value源错误:执行当前Web请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。堆栈跟踪:[ArgumentOutOfRangeException:“ddlcity”有一个无效SelectedValue,因为它不在项目列表中。参数名:value]System.Web.UI.WebControls.ListControl.PerformDataBinding(IEnumerabledataSource)+977System.Web.UI.WebControls.ListControl.OnDataBinding(EventArgse)+97System.Web.UI.WebControls.ListControl.PerformSelect()+21System.Web.UI.WebControls.BaseDataBoundControl.DataBind()+71System.Web.UI.Control.DataBindChildren()+207System.Web.UI.Control.DataBind(BooleanraiseOnDataBinding)+149System.Web.UI.Control.DataBind()+15System.Web.UI.Control.DataBindChildren()+207System.Web.UI.Control.DataBind(BooleanraiseOnDataBinding)+149System.Web.UI.Control.DataBind()+15System.Web.UI.WebControls.GridView.CreateRow(Int32rowIndex,Int32dataSourceIndex,DataControlRowTyperowType,DataControlRowStaterowState,BooleandataBind,ObjectdataItem,DataControlField[]fields,TableRowCollectionrows,PagedDataSourcepagedDataSource)+156System.Web.UI.WebControls.GridView.CreateChildControls(IEnumerabledataSource,BooleandataBinding)+2444System.Web.UI.WebControls.CompositeDataBoundControl.PerformDataBinding(IEnumerabledata)+58System.Web.UI.WebControls.GridView.PerformDataBinding(IEnumerabledata)+15System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerabledata)+104System.Web.UI.DataSourceView.Select(DataSourceSelectArgumentsarguments,DataSourceViewSelectCallbackcallback)+27System.Web.UI.WebControls.DataBoundControl.PerformSelect()+133System.Web.UI.WebControls.BaseDataBoundControl.DataBind()+71System.Web.UI.WebControls.GridView.DataBind()+5System.Web.UI.WebControls.BaseDataBoundControl.EnsureDataBound()+61System.Web.UI.WebControls.BaseDataBoundControl.OnPreRender(EventArgse)+22System.Web.UI.WebControls.GridView.OnPreRender(EventArgse)+18System.Web.UI.Control.PreRenderRecursiveInternal()+91System.Web.UI.Control.PreRenderRecursiveInternal()+180System.Web.UI.Control.PreRenderRecursiveInternal()+180System.Web.UI.Page.ProcessRequestMain(BooleanincludeStagesBeforeAsyncPoint,BooleanincludeStagesAfterAsyncPoint)+3873代码如下.那位帮忙看看<%@PageLanguage="C#"%><!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="http://www.w3.org/1999/xhtml"><headid="Head1"runat="server"><title>Show</title></head><body><formid="form1"runat="server"><div><asp:GridViewID="grdMovies"DataSourceID="SqlDataSource1"DataKeyNames="ID"AutoGenerateColumns="False"AutoGenerateEditButton="True"Runat="server"><Columns><asp:TemplateFieldHeaderText="UserName"><ItemTemplate><%#Eval("UserName")%></ItemTemplate><EditItemTemplate><asp:TextBoxID="txtUserName"Text='<%#Bind("UserName")%>'runat="server"></asp:TextBox><asp:RequiredFieldValidatorid="valUserName"ControlToValidate="txtUserName"Text="(required)"runat="server"></asp:RequiredFieldValidator></EditItemTemplate></asp:TemplateField><asp:TemplateFieldHeaderText="city"><ItemTemplate><%#Eval("city")%></ItemTemplate><EditItemTemplate><asp:DropDownListid="ddlcity"DataSourceID="SqlDataSource2"DataTextField="city"DataValueField="ID"SelectedValue='<%#Bind("cityID")%>'runat="server"></asp:DropDownList></EditItemTemplate></asp:TemplateField></Columns></asp:GridView><asp:SqlDataSourceid="SqlDataSource1"ConnectionString="server=;uid=sa;password=;database="SelectCommand="SELECTtb_User.ID,tb_User.UserName,tb_User.cityID,tb_User.cityFROMtb_UserJOINCitysONCitys.ID=tb_User.cityID"UpdateCommand="UPDATEtb_UserSETUserName=@UserName,cityID=@cityidWHERE(ID=@ID)"runat="server"ProviderName="System.Data.SqlClient"><UpdateParameters><asp:ParameterName="UserName"/><asp:ParameterName="cityid"/><asp:ParameterName="ID"/></UpdateParameters></asp:SqlDataSource><asp:SqlDataSourceid="SqlDataSource2"ConnectionString="server=;uid=sa;password=;database="SelectCommand="SelectID,Citys.cityfromCitys"runat="server"></asp:SqlDataSource></div></form></body></html>

解决方案

解决方案二:
猜测一下是不是你绑定的时候有的CITYID值是重复的?
解决方案三:
不是
解决方案四:
你绑定的值是NUll,或者是string.Empty
解决方案五:
查看下数据库
解决方案六:
ConnectionString="server=;uid=sa;password=;database="这里能对吗!
解决方案七:
<asp:DropDownListid="ddlcity"DataSourceID="SqlDataSource2"DataTextField="city"DataValueField="ID"SelectedValue='<%#Bind("cityID")%>'runat="server"></asp:DropDownList>SelectID,Citys.cityfromCitys这里根本对不上,查询的字段没有cityID。
解决方案八:
正解...忘记了...现在还有个问题就是在我更新数据的时候,点击更新后CITYID自动变成NULL,从而使这列数据消失,这是什么原因?
解决方案九:
引用6楼net_xiaojian的回复:

<asp:DropDownListid="ddlcity"DataSourceID="SqlDataSource2"DataTextField="city"DataValueField="ID"SelectedValue='<%#Bind("cityID")%>'runat="server"></asp:DropDownList>SelectID,Citys.cityfromCitys这里根本对不上,查询的字段没有cityID。

好像也没错..这个CITYID用的是SQLDATASOURCE1里的

时间: 2024-10-27 15:07:50

总是提示错误&amp;quot;&amp;quot;ddlcity&amp;quot;有一个无效 SelectedValue,因为它不在项目列表中。&amp;quot;的相关文章

C# 编辑代码时提示错误:与其最匹配的重载方法具有一些无效参数

问题描述 C# 编辑代码时提示错误:与其最匹配的重载方法具有一些无效参数 方法: public void plusOne(ref int numX,ref int numY) { if(numY<8) { numY += 1; } else { numX = numX + 1; numY = 0; } } public void cel() { int num1=1; int num2=1; plusOne(num1,num2);//此处显示错误:与其最匹配的重载方法具有一些无效参数 } 解决方

Win7系统登录QQ失败提示错误0x0006000d怎么解决?

Win7系统登录QQ失败提示错误0x0006000d怎么解决?   方法一: 多次尝试登录qq,如果这个方法不行,请看下面的方法. 方法二: 可能是有qq进程正在运行,如果你再次运行qq来登录时会造成冲突,解决方法就是在任务管理器中结束所有和qq相关的进程,然后重新运行qq再登录. 方法三: 如果方法一和二都不行,那么你可以注销你的电脑,如果注销还是不行建议重启电脑,或者重新下载一个QQ.(腾讯QQ正式版下载)

Apache启动提示错误undefined symbol: libiconv

  这篇文章主要介绍了Apache启动提示错误undefined symbol: libiconv_open解决方法,需要的朋友可以参考下 昨晚整合apache和php是实在找不到解决办法,Google 百度都转一圈了,总算在百度找回来解决方法,记录一下,这个问题是在apache启动时出现的: ./apachectl start提示下面的错误: 代码如下: httpd: Syntax error on line 57 of /usr/local/apache2/conf/httpd.conf:

Win8宽带连接提示错误651问题

  故障提示: 错误651:调制解调器(或其他连接设备)报告了一个错误.(图1) 图1 网线连接不好时桌面右下角的现象图 网络里面的内容 故障原因: ADSL接入:ADSL MODEM物理连接不好 ;Modem参数设置有问题,如VPI/VCI设置与设备不相同;计算机防火墙阻断网络;机房ADSL端口故障;ADSL Modem故障;客户使用路由器原因. FTTX+LAN:网线连接不好;交换机故障;计算机防火墙阻断网络;机房端口故障;客户使用路由器原因. FTTH:光纤连接不好;光猫故障;计算机防火墙

Win8.1蓝屏提示错误0x00000139怎么回事?

Win8.1蓝屏提示错误0x00000139怎么回事?         具体如下: 1.按Windows和x键,点击命令提示符(管理员); 2.输入DISM.exe /Online /Cleanup-image /checkHealth,按回车; 3.等之前的执行完毕之后,如果有问题,输入DISM.exe /Online /Cleanup-image /RestoreHealth ,按回车. win8.1系统遇到蓝屏错误0x00000139的原因是显卡驱动,如果上面的方法不能解决您的问题,那么您

hive执行query语句时提示错误

hive执行query语句时提示错误:org.apache.hadoop.ipc.RemoteException: java.io.IOException: java.io.IOException: hive> select product_id, track_time from trackinfo limit 5; Total MapReduce jobs = 1 Launching Job 1 out of 1 Number of reduce tasks is set to 0 since

Java Web项目经常提示错误

Java Web项目经常提示错误"This project needs to migrate WTP metadata",简单的解决方法就是右击项目然后选择Validate,做完validate后错误就消失了. 出处:http://stevex.blog.51cto.com/4300375/941669

win7系统无法启动备份文件提示错误0X800423怎么办?

win7系统无法启动备份文件提示错误0X800423怎么办?   解决方法: 1.在运行对话框中,输入services.msc回车打开服务; 2.在服务中开启Volume Shadow Copy服务,改成自动和手动均可.(系统默认是手动,ghost系统或者优化软件容易造成此项禁用.) 3.修改完成后,再进行windows备份还原操作即可.

win7系统开启服务提示错误1067进程意外终止怎么办

  win7系统开启服务提示错误1067进程意外终止怎么办 1.在桌面上的网络图标上单机右键,选择属性,然后点击"更改适配器设置"; 2.在网络链接界面中的"本地连接"上单击右键选择属性(网络连接中有多个"本地连接",我们要选择在使用的那一个); 3.在属性界面点击"共享"选卡,然后点击"设置"按钮; 4.在高级设置中,在服务窗口下方勾选所有服务,然后点击确定; 5.在左面上的计算机中单击右键,选择&quo