比较急 在线等!repeater 筛选数据 显示

baoxuetianxia 2009-04-15 08:40:25
大哥大姐 你们好
做了一个新闻发布系统 大至做好了 由于是用的别人的代码 还不是很了解 repeater 控件
<asp:Repeater ID="newsList" runat="server">
<ItemTemplate>
<table width="100%">
<tr>
<td>
●<a target="_blank" href="../Managecontent/Default_Show.aspx?id=<%# DataBinder.Eval(Container.DataItem, "Id")%>"><%# DataBinder.Eval(Container.DataItem, "Title")%></a> 类别:[<%# DataBinder.Eval(Container.DataItem, "Kind")%>] 发布日期:<%# DataBinder.Eval(Container.DataItem, "Datetime")%>

</td>
</tr>
</table>
</ItemTemplate>
</asp:Repeater>
这是在主页上显示 已经弄好了
但是有个字段 就是 类别
类别:[<%# DataBinder.Eval(Container.DataItem, "Kind")%>]
<asp:ListItem>默认</asp:ListItem>
<asp:ListItem>公司新闻</asp:ListItem>
<asp:ListItem>业内新闻</asp:ListItem>
<asp:ListItem>封装技术</asp:ListItem>
<asp:ListItem>应用技术</asp:ListItem>
<asp:ListItem>专业书籍</asp:ListItem>
<asp:ListItem>国内新闻</asp:ListItem>
<asp:ListItem>国际新闻</asp:ListItem>
<asp:ListItem>最新技术</asp:ListItem>
<asp:ListItem>娱乐天地</asp:ListItem>
<asp:ListItem>图片新闻</asp:ListItem>
我想筛选出 比如说 就是 公司新闻 所有的
我想了个
类别:[<%# DataBinder.Eval(Container.DataItem, "公司新闻")%>]
但那时报错
DataBinding:“System.Data.DataRowView”不包含名为“公司新闻”的属性。


假如描述的不太清楚 欢迎指导 本人 在线等
...全文
130 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
baoxuetianxia 2009-04-15
  • 打赏
  • 举报
回复
你要在后台去筛选数据源,类似这样子:
DataView dv = dataTable.DefaultView;
dv.RowFilter = "Kind = '公司新闻'"
repeater.DataSource = dv;
谢谢 刚弄好 太 太谢谢 你了 orain
还有其他的兄弟 我说的可能不是很清楚哦 有可能你们有点误会我的意思了哦。
问题解决了 就好啊 zzxap经常看见你啊
xfreyes 2009-04-15
  • 打赏
  • 举报
回复
你后台取数据的时候控制啊
这语句“SELECT Kind, Id, Title, DateTime FROM News” 想怎么控制你自己写啊。
baoxuetianxia 2009-04-15
  • 打赏
  • 举报
回复
这个Kind 是添加新闻 里的一个dropdownlist 我就是把他的 selectValue 发送到了 数据库 Kind里
baoxuetianxia 2009-04-15
  • 打赏
  • 举报
回复
string strconn = "Data Source=SZIEC-DC68911A7;Initial Catalog=MFG;Integrated Security=True";
SqlConnection conn = new SqlConnection(strconn);
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter("SELECT Kind, Id, Title, DateTime FROM News", conn);
da.Fill(ds, "News");
这是后台 填充了一个ds表
类别:[ <%# DataBinder.Eval(Container.DataItem, "Kind")%>] 发布日期: <%# DataBinder.Eval(Container.DataItem, "Datetime")%>
orain 2009-04-15
  • 打赏
  • 举报
回复
如果你有分页的话,最好通过 SQL 语句来筛选.
路人乙e 2009-04-15
  • 打赏
  • 举报
回复
如果要筛选,应该在SQL语句上做文章,<%# DataBinder.Eval(Container.DataItem, "这里应该是字段名")%>
比如要筛选类别为“公司新闻”的内容:select * from tb where kind="公司新闻"
coodd 2009-04-15
  • 打赏
  • 举报
回复
好像你不只对repeater不熟,对数据绑定也没概念。每点一个ListItem,要设一下repeater的数据源(DataSource),也就是要改Sql查询语句。
orain 2009-04-15
  • 打赏
  • 举报
回复
你要在后台去筛选数据源,类似这样子:
DataView dv = dataTable.DefaultView;
dv.RowFilter = "Kind = '公司新闻'"
repeater.DataSource = dv;
baoxuetianxia 2009-04-15
  • 打赏
  • 举报
回复
这样的话 好像没有办法 进行 筛选了哦? 或者还有有别的办法了啊?
zzxap 2009-04-15
  • 打赏
  • 举报
回复
[ <%# DataBinder.Eval(Container.DataItem, "aaaa")%>]


这个aaaa必须是后台SQL语句中select中出现的字段。
baoxuetianxia 2009-04-15
  • 打赏
  • 举报
回复
补充
发布日期: <%# DataBinder.Eval(Container.DataItem, "Datetime")%>
是否能根据这个 筛选出 近一个星期的文章?

62,046

社区成员

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

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

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

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