asp:Repeater 为何不显示数据?

draiden 2012-06-14 09:58:45
初学asp.net
在51aspx下了一个开源的项目打算边修改边学
在后台那里模仿登陆和修改用户密码功能都成功
但是在查询用户列表的时候用的asp:Repeater就不显示数据了,项目自己的列表就能出来,我模仿的后台用户列表就出不来了,后台代码那里SQL语句是没有问题的,在数据库里能查出数据。但是asp:Repeater里面我查看源代码却只有input,不见循环出来的表格

aspx文件

<form id="form1" runat="server">
<div>
<asp:Repeater ID="rptList" runat="server">
<HeaderTemplate>
<table width="98%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="31" background="../images/d2.jpg"><table width="100%" border="0" cellpadding="5" cellspacing="0">
<tr>
<td width="5%"><div align="center"><STRONG>序号</STRONG></div></td>
<td width="18%"><div align="center"><STRONG>权限</STRONG></div></td>
<td width="41%"><div align="center"><STRONG>用户名</STRONG></div></td>
<td width="38%"><div align="center"><STRONG>操作</STRONG></div></td>
</tr>
</table></td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>

<table width="100%" border="0" cellpadding="0" cellspacing="0" background="images/x1.jpg">

<tr onmouseover="this.bgColor='#D6DD2F'" onmouseout="this.bgColor='#FFFFFF'">
<!--
<tr bgcolor="#F3F7FA" onmouseover="this.bgColor='#D6DD2F'" onmouseout="this.bgColor='#F3F7FA'">
-->
<td><table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="5%" height="38" class="p12d2"><asp:Label ID="lb_id" runat="server" Text='<%# Eval("Id")%>' Visible="False"></asp:Label></td>
<td width="18%"><%# Eval("UserType").ToString().Trim() == "1" ? "<span>超级管理员</span>" : "<span>普通管理员</span>"%>
</td>
<td width="41%"><%# Eval("UserName")%></td>
<td width="38%"><table width="70%" border="0" align="right" cellpadding="0" cellspacing="0">
<tr>
<td width="10%"><img src="../images/g2.jpg" width="14" height="16"></td>
<td width="40%"><span><a href="user_updateform.aspx?id=<%# Eval("Id") %>">修改</a></span></td>
<td width="10%"><img src="../images/g3.jpg" width="13" height="13"></td>
<td width="40%"><span><a href="user_updateform.aspx?id=<%# Eval("Id") %>">删除</a></span></td>
</tr>
</table></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="6" bgcolor="#D5E0F2" class="p12d2"><img src="../images/x1x1.jpg" width="26" height="1"></td>
</tr>
</table></td>
</tr>

</table>

</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
</div>
<div class="spClear"></div>
<div style="line-height:30px;height:30px;">
<div class="right flickr">
<webdiyer:aspnetpager ID="AspNetPager1" runat="server" CssClass="formfield"
CustomInfoClass="formbutton"
CustomInfoHTML="第<font color='red'><b>%CurrentPageIndex%</b></font>页 共%PageCount% 页 %StartRecordIndex%-%EndRecordIndex%"
CustomInfoTextAlign="Center" FirstPageText="首页" horizontalalign="Center"
InputBoxStyle="width:19px" LastPageText="尾页" meta:resourceKey="AspNetPager1"
NextPageText="下一页" PageSize="9"
PrevPageText="前一页" showcustominfosection="Left" ShowInputBox="Always"
ShowNavigationToolTip="True" style="FONT-SIZE: 12px"
SubmitButtonClass="formfield" SubmitButtonText="GO" width="506px"
onpagechanging="AspNetPager1_PageChanging" PageIndexBoxType="TextBox"
ShowPageIndexBox="Never" AlwaysShow="True">
</webdiyer:aspnetpager>
</div>
<div class="left">
<span class="btn_all" onclick="checkAll(this);">全选</span>
<span class="btn_bg">
<asp:LinkButton ID="lbtnDel" runat="server" onclick="lbtnDel_Click" OnClientClick="return confirm( '确定要删除这些记录吗? ');">批量删除</asp:LinkButton>
</span>
</div>
</div>
</div>
<div>
<ext:ScriptManager ID="ScriptManager1" runat="server">
</ext:ScriptManager>
</div>
</form>


cs文件

public int pcount = 0;

protected void Page_Load(object sender, EventArgs e)
{
if(!Page.IsPostBack){
RptBind("");
}
}

#region 数据绑定
public void RptBind(string strWhere)
{
Cms.BLL.maintain bll = new Cms.BLL.maintain();
DataSet ds = bll.GetList(strWhere);
DataView dv = ds.Tables[0].DefaultView;
//利用PAGEDDAGASOURCE类来分页
PagedDataSource pds = new PagedDataSource();
AspNetPager1.RecordCount = dv.Count;
pds.DataSource = dv;
pds.AllowPaging = true;
pds.CurrentPageIndex = AspNetPager1.CurrentPageIndex - 1;
pds.PageSize = AspNetPager1.PageSize;
//获得总条数
pcount = bll.GetCount(strWhere);
if (this.pcount > 0)
{
this.lbtnDel.Enabled = true;
}
else
{
this.lbtnDel.Enabled = false;
}
//绑定数据
rptList.DataSource = pds;
rptList.DataBind();
}
#endregion

#region 批量删除
protected void lbtnDel_Click(object sender, EventArgs e)
{
Cms.BLL.maintain bll = new BLL.maintain();
//批量删除
for (int i = 0; i < rptList.Items.Count; i++)
{
int id = Convert.ToInt32(((Label)rptList.Items[i].FindControl("lb_id")).Text);
CheckBox cb = (CheckBox)rptList.Items[i].FindControl("cb_id");
if (cb.Checked)
{
//保存日志
SaveLogs("[链接管理]删除链接:" + bll.GetModel(id).UserName);
//删除记录
bll.Delete(id);
}
}
Coolite.Ext.Web.Ext.MessageBox.Alert("提示", "批量删除成功").Show();
RptBind("");
}
#endregion

protected void AspNetPager1_PageChanging(object src, Wuqi.Webdiyer.PageChangingEventArgs e)
{
AspNetPager1.CurrentPageIndex = e.NewPageIndex;
RptBind("");
}




我想问是不是这样写的话必须先建表视图啊?还是说我必须引入哪个js?
...全文
424 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
draiden 2012-06-14
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]
引用 11 楼 的回复:

引用 10 楼 的回复:
压根就没进你后台的代码里!咋会绑定呢!你看看 触发事件进没进吧!


说得对,但是怎么看触发事件进没进啊?请指教下,感激不尽

Page_Load事件也进不去???
[/Quote]


额,是的。。。。我在想是不是因为我用了FRAME的原因,但是没理由啊,我修改密码那个页面也可以正常使用啊,为什么换成查询就不行呢?
Chyan 2012-06-14
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 的回复:]

引用 10 楼 的回复:
压根就没进你后台的代码里!咋会绑定呢!你看看 触发事件进没进吧!


说得对,但是怎么看触发事件进没进啊?请指教下,感激不尽
[/Quote]
Page_Load事件也进不去???
draiden 2012-06-14
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]
压根就没进你后台的代码里!咋会绑定呢!你看看 触发事件进没进吧!
[/Quote]

说得对,但是怎么看触发事件进没进啊?请指教下,感激不尽
sawjie 2012-06-14
  • 打赏
  • 举报
回复
压根就没进你后台的代码里!咋会绑定呢!你看看 触发事件进没进吧!
draiden 2012-06-14
  • 打赏
  • 举报
回复
的确是调试,我用鼠标点的,关键是断点没反应,我在想是不是页面根本没去读.cs文件?


<%@ Page Language="C#" AutoEventWireup="True" CodeBehind="user_manage.aspx.cs" Inherits="Cms.Web.maintain.user.user_manage" %>

<%@ Register Assembly="Coolite.Ext.Web" Namespace="Coolite.Ext.Web" TagPrefix="ext" %>

<%@ Register Assembly="AspNetPager" Namespace="Wuqi.Webdiyer" TagPrefix="webdiyer" %>

<!-- #include file="../include/head.aspx" -->
</HEAD>
<!-- #include file="../include/top.aspx" -->
<table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="186" valign="top" background="../images/add_12.jpg"><table width="40" border="0" cellpadding="0" cellspacing="0" background="../images/add_12.jpg">
<!-- #include file="../include/left_user.aspx" -->
<tr>
<td height="100"><img src="../images/add_12.jpg" width="186" height="17"></td>
</tr>
<!-- #include file="../include/banquan.aspx" -->
</table></td>
<td valign="top" bgcolor="#FFFFFF"><table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="44" background="../images/addnews_8.jpg"><div align="center" class="p12d">
<table width="95%" height="26" border="0" cellpadding="0" cellspacing="0">
<tr>
<td valign="bottom"><div align="center" class="p12d">用户管理</div></td>
</tr>
</table>
</div></td>
</tr>
<tr>
<td height="900" valign="top"><div align="center">
<br>
<table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="32" background="../images/dd.jpg"><table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="30%"><table width="60%" border="0" align="right" cellpadding="0" cellspacing="0">
<tr align="right">
<td align="right"><a href="user_add.aspx"><img src="../images/A1.jpg" width="68" height="23" border="0"></a></td>
<td align="right"><a href="user_manage.aspx"><img src="../images/A2.jpg" width="68" height="23" border="0"></a></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
</table>
<form id="form1" runat="server">
<div>
<asp:Repeater ID="rptList" runat="server">
<HeaderTemplate>
<table width="98%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="31" background="../images/d2.jpg"><table width="100%" border="0" cellpadding="5" cellspacing="0">
<tr>
<td width="5%"><div align="center"><STRONG>序号</STRONG></div></td>
<td width="18%"><div align="center"><STRONG>权限</STRONG></div></td>
<td width="41%"><div align="center"><STRONG>用户名</STRONG></div></td>
<td width="38%"><div align="center"><STRONG>操作</STRONG></div></td>
</tr>
</table></td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>

<table width="100%" border="0" cellpadding="0" cellspacing="0" background="images/x1.jpg">

<tr onmouseover="this.bgColor='#D6DD2F'" onmouseout="this.bgColor='#FFFFFF'">
<!--
<tr bgcolor="#F3F7FA" onmouseover="this.bgColor='#D6DD2F'" onmouseout="this.bgColor='#F3F7FA'">
-->
<td><table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="5%" height="38" class="p12d2"><asp:Label ID="lb_id" runat="server" Text='<%# Eval("Id")%>' Visible="False"></asp:Label></td>
<td width="18%"><%# Eval("UserType").ToString().Trim() == "1" ? "<span>超级管理员</span>" : "<span>普通管理员</span>"%>
</td>
<td width="41%"><%# Eval("UserName")%></td>
<td width="38%"><table width="70%" border="0" align="right" cellpadding="0" cellspacing="0">
<tr>
<td width="10%"><img src="../images/g2.jpg" width="14" height="16"></td>
<td width="40%"><span><a href="user_updateform.aspx?id=<%# Eval("Id") %>">修改</a></span></td>
<td width="10%"><img src="../images/g3.jpg" width="13" height="13"></td>
<td width="40%"><span><a href="user_updateform.aspx?id=<%# Eval("Id") %>">删除</a></span></td>
</tr>
</table></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="6" bgcolor="#D5E0F2" class="p12d2"><img src="../images/x1x1.jpg" width="26" height="1"></td>
</tr>
</table></td>
</tr>

</table>

</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
</div>
<div class="spClear"></div>
<div style="line-height:30px;height:30px;">
<div class="right flickr">
<webdiyer:aspnetpager ID="AspNetPager1" runat="server" CssClass="formfield"
CustomInfoClass="formbutton"
CustomInfoHTML="第<font color='red'><b>%CurrentPageIndex%</b></font>页 共%PageCount% 页 %StartRecordIndex%-%EndRecordIndex%"
CustomInfoTextAlign="Center" FirstPageText="首页" horizontalalign="Center"
InputBoxStyle="width:19px" LastPageText="尾页" meta:resourceKey="AspNetPager1"
NextPageText="下一页" PageSize="9"
PrevPageText="前一页" showcustominfosection="Left" ShowInputBox="Always"
ShowNavigationToolTip="True" style="FONT-SIZE: 12px"
SubmitButtonClass="formfield" SubmitButtonText="GO" width="506px"
onpagechanging="AspNetPager1_PageChanging" PageIndexBoxType="TextBox"
ShowPageIndexBox="Never" AlwaysShow="True">
</webdiyer:aspnetpager>
</div>
<div class="left">
<span class="btn_all" onclick="checkAll(this);">全选</span>
<span class="btn_bg">
<asp:LinkButton ID="lbtnDel" runat="server" onclick="lbtnDel_Click" OnClientClick="return confirm( '确定要删除这些记录吗? ');">批量删除</asp:LinkButton>
</span>
</div>
</div>
</div>
<div>
<ext:ScriptManager ID="ScriptManager1" runat="server">
</ext:ScriptManager>
</div>
</form>
</td>
</tr>
</table></td>
</tr>
</table>
<!-- #include file="../include/bottom.aspx" -->
Chyan 2012-06-14
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

引用 2 楼 的回复:
DataView dv = ds.Tables[0].DefaultView;
前面打断点。
确定dv里面确实有数据吗?



设了断点,但是我进列表页面它没任何反应,怎么回事?难道没经过这条语句?
[/Quote]
进页面的事件是什么?IsPostBack是否返回true了?
还是调试的时候习惯性的ctrl+F5运行了。。。。
draiden 2012-06-14
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]
这种情况你只能设断点一步一步调试了
[/Quote]

现在我设断点了,但是它没反应啊,郁闷了,难道不读.cs文件了?
vrvwjm 2012-06-14
  • 打赏
  • 举报
回复
这种情况你只能设断点一步一步调试了
draiden 2012-06-14
  • 打赏
  • 举报
回复
把sql语句放数据库里面查询了,出来2条数据
yyl8781697 2012-06-14
  • 打赏
  • 举报
回复
断点进bll.GetList(strWhere)里面的方法,最好进最后一层数据访问层,看有没有数据,或者
取得那个sql语句放进sqlserver里面去执行以下 会不会有数据
draiden 2012-06-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
DataView dv = ds.Tables[0].DefaultView;
前面打断点。
确定dv里面确实有数据吗?
[/Quote]


设了断点,但是我进列表页面它没任何反应,怎么回事?难道没经过这条语句?
Chyan 2012-06-14
  • 打赏
  • 举报
回复
DataView dv = ds.Tables[0].DefaultView;
前面打断点。
确定dv里面确实有数据吗?
sawjie 2012-06-14
  • 打赏
  • 举报
回复
调试进去试试不就知道了!

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧