.net绑定完数据源,然后执行删除方法,数据库已经删除,但页面上还是老的数据,只有点击刷新....

.net绑定完数据源,然后执行删除方法,数据库已经删除,但页面上还是老的数据,只有点击刷新才能够显示新数据这是怎么回事??
<asp:ListBox ID="ListBox1" runat="server" DataSourceID="AccessDataSource1"
DataTextField="fenlei" DataValueField="fenleiid" Height="140px"
Width="118px" >
</asp:ListBox>
<asp:AccessDataSource ID="AccessDataSource1" runat="server"
DataFile="~/App_Data/ycwl.mdb" >
</asp:AccessDataSource>
删除事件
string sql = string.Format("delete from huiyuanfenlei where fenleiid='{0}'", this.ListBox1.SelectedValue);
dbhelp.ExecuteCommand(sql);
this.ListBox1.DataBind();
在任何一个数据控件中都是这,如gridview,页面上的数据得不到更新,但数据库的数据的确更新了,只有点击浏览器的刷新按钮才行,也重新绑定了,也跳转了,但是还不行

我晕,删除数据的时候你不给个提示吗?那个是缓存,因为你删除服务器数据了,但是当前页面没有自动刷新。最简单的办法就是 this.ListBox1.DataBind(); 下面加一句 Response.Write("<script>alert('删除成功!')</script>"); 这样弹个框后页面会自动回传刷新,取得最新数据,当然也可以用Ajax无刷新等其他方法实现,这只是最简单及最常用的方法。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-01-29
删除后会返回一个值,你对这个值进行判断,这个值我记得应该是个整形。如果删除失败返回的应该是-1。
dbhelp.ExecuteCommand(sql);这句代码执行完应该会返回你一个值。你用个整形的变量去接受这个值或者直接对删除语句做判断。
if( dbhelp.ExecuteCommand(sql)>0)//大于0就是代表删除成功了,然后在下面做一个跳转页面,就是连接到你这个删除的页面,重新加载此页面后数据自动会更新。
{
response.redirect(url);//url就是你删除页面的路径,这样跳转回来以后就自动更新数据了。前提你页面控件已经绑定了数据。重新跳转过来后,它会重新去数据库进行绑定,这样就OK了。
}
第2个回答  2012-01-29
先删除,再进行数据库里面的数据读取。
然后绑定.追问

数据源是直接托的控件,你说的“再进行数据库里面的数据读取”该怎么做呢??附上代码吧

第3个回答  2012-01-29
删除之后要执行查询,在做绑定就可以了。
第4个回答  2012-01-29
删除->查询->绑定
第5个回答  2012-01-30
删除数据后在重新绑定数据,就可以实现了

请asp.net高手回答关于Gridview的数据筛选问题。
那你重新加一个数据源,然后改变原来那个数据源名称不就可以了,首先如果你绑定了那个数据源,那么数据就是固定的了,但是你的要求是要显示你想要的某一行,那么说明数据源就不是原来那一个了,是一个新的

.net 怎么将数据库中获得的数据绑定到select控件
你只需要提供后台的输出是你的数据源就可以了,输出的时候输出[]格式或者{}格式 在客户端用eva{" '{++'}' "}l执行看能不能得到你要的数组或者对象..只是一种思路 其他的方法有很多比如 用AiaxPro 在js里面直接调用后台方法就可以了..源代码没有,给思路给你,其实网上的一些源代码肯定有....

asp.net中web窗体对数据库增查删改,直接的操作
你在设计界面点那个箭头给gridview 配置数据源,配置时记得点【高级】里勾选上生成增删改查。然后配置gridview,勾选启用编辑 之类的。这是不用写代码的最原始做法。如果要自己写,那就是在前台给gridview添加几个相关事件。后台再写代码就可以

.net中数据源配置数据库的内容使其显示在gridview里面;数据库有10条...
用gridview控件来显示数据 (设置gridview的关键字:datakeynames:书号,并在数据库中把书号设为主键)分页显示:allowpaging: true (允许分页显示) ; pagesize: 5 (每页5个记录)protected void Page_Load(object sender, EventArgs e){ if (!IsPostBack)dispbook();} protected void dispbook(){ ...

asp.net中dropdownlist控件绑定数据库,但取不到第一个值??急!!_百度...
只要绑定的数据源有数据的话,那就一定会显示的,要么第一个为空。

ASP.NET 我在后台为Repeater绑定数据源,如何同时获得Repeater中的控件...
只能在Repeater的ItemDataBound事件中,用FindControl方法获取,然后重新绑定,在其它地方用FindControl方法不行的。比如在事件中可以这样写 if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem){ Button btn = (Button)e.Item.FindControl("btnDetail");int...

vb.net 表格控件如何连接数据库
dim ds as new dataset 把筛选出来的数据绑定到dataset上,然后直接绑定数据源就行 DataGridView.DataSource = ds.tables("Imtable")

ASP.net(C#) 从数据库提取数据 如何显示到网页指定位置
<\/asp:Repeater> 你看这个,最外层有个div,你可固定这个div的位置,然后里面是ul-li列表,还有个Repeater标签,在后台应该先绑定Repeater,然后<%# Eval("Title")%>这个是需要显示数据源中的某个字段,这里显示的是标题(Title),明白了嘛?你仔细想想,很好明白的!

vb.net远程连接mysql数据库的问题
EOF then '开始查找(用了取么操作没有找到到指针即找到了记录)那么执行下面的语句 ADOrs("name")=trim(text1) '把字段name显示给textbox1 ADOrs("year")=trim(text2) '把字段year显示给textbox2 else msgbox "数据库没有检索到你要搜索的记录!",vbokonly,"提示" end if ...

GridView的编辑,删除功能,
<a href='remove.aspx?ID=<%# DataBinder.Eval(Container.DataItem,"ID")%>'>删除 然后在你的edit.aspx和remove.aspx中接收参数.并根据参数来执行你的逻辑.进行操作.操作完成后再返回gridview页面.这里要注意的是这两个页面中在操作前一定要对参数进行过滤和判断.还有权限的判断....

相似回答