`
useruu
  • 浏览: 5705 次
  • 性别: Icon_minigender_1
  • 来自: 赤峰
最近访客 更多访客>>
社区版块
存档分类
最新评论

Repeater+SQL查询3层嵌套

阅读更多
ASPX
        <ul>
        <asp:Repeater ID="TemRepeater1" runat="server" OnItemDataBound="TemRepeater1_ItemDataBound">
        <ItemTemplate>
        <li>
            <div><%#Eval("LibraryName")%></div>
            
            <asp:Repeater ID="TemRepeater2" runat="server" OnItemDataBound="TemRepeater2_ItemDataBound">
            <HeaderTemplate><ul></HeaderTemplate>
            <FooterTemplate></ul></FooterTemplate>
            <ItemTemplate>
            <li>
                <div><%#Eval("SubjectName")%></div>
                    
                <asp:Repeater ID="TemRepeater3" runat="server">
                <HeaderTemplate><ul></HeaderTemplate>
                <FooterTemplate></ul></FooterTemplate>
                    <ItemTemplate>
                    <li>
                    <div><%#Eval("Title") %></div>
                    </li>
                    </ItemTemplate>
                </asp:Repeater>
                
                </li>
                </ItemTemplate>
            </asp:Repeater>
            
            </li>
            </ItemTemplate>
        </asp:Repeater>
        </ul>

CS
        protected void Page_Load(object sender, EventArgs e)
        {
            string ConnectionString = ConfigurationManager.AppSettings["ConnectionString"].ToString();
            SqlConnection conn = new SqlConnection(ConnectionString);

            string bStr = "select * from Library";
            SqlDataAdapter rs = new SqlDataAdapter(bStr, conn);
            conn.Open();
            DataSet rd = new DataSet();
            rs.Fill(rd);
            TemRepeater1.DataSource = rd;
            TemRepeater1.DataBind();
            conn.Close();
            Listbind();
        }
        protected void TemRepeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                string preid = ((DataRowView)e.Item.DataItem).Row["ID"].ToString();//获得对应ID
                Repeater r2 = (Repeater)e.Item.FindControl("TemRepeater2");//找到要绑定数据的Repeater
                if (r2 != null)
                {
                    string ConnectionString = ConfigurationManager.AppSettings["ConnectionString"].ToString();
                    SqlConnection sc = new SqlConnection(ConnectionString);
                    string scmd = "select * from Subject where ParentID=" + preid + " order by ID asc";

                    SqlDataAdapter srs = new SqlDataAdapter(scmd, sc);
                    sc.Open();
                    DataSet srd = new DataSet();
                    srs.Fill(srd);

                    r2.DataSource = srd;
                    r2.DataBind();
                    sc.Close();
                }
            }
        }
        protected void TemRepeater2_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {

                string preid = ((DataRowView)e.Item.DataItem).Row["id"].ToString();//获得对应ID

                Repeater r3 = (Repeater)e.Item.FindControl("TemRepeater3");//找到要绑定数据的Repeater
                if (r3 != null)
                {
                    string ConnectionString = ConfigurationManager.AppSettings["ConnectionString"].ToString();
                    SqlConnection sc = new SqlConnection(ConnectionString);
                    string scmd = "select * from Title where SubjectID=" + preid + " order by ID asc";

                    SqlDataAdapter srs = new SqlDataAdapter(scmd, sc);
                    sc.Open();
                    DataSet srd = new DataSet();
                    srs.Fill(srd);

                    r3.DataSource = srd;
                    r3.DataBind();
                    sc.Close();
                }

            }
        }
分享到:
评论

相关推荐

    c#Repeater多层嵌套的代码

    本篇文章将深入探讨如何在C#中实现Repeater控件的多层嵌套,以及如何根据分类ID查询并绑定产品数据。 首先,我们需要理解Repeater的基本用法。Repeater不提供任何内置的样式或布局,而是通过模板来定义其外观和行为...

    Repeater 二层嵌套

    在“Repeater的二层嵌套”场景中,我们通常会遇到如何在一个Repeater控件内部再嵌套另一个Repeater控件,以展示层次结构的数据,例如目录树、组织结构或者产品分类等。这个技术点对于构建动态和交互性强的Web应用...

    一个基于Repeater+C#实现的的翻页控件源码程序

    为了实现分页链接的显示,我们可以在Repeater的ItemTemplate中嵌套另一个控件,如HyperLink或Button,用于表示每一页的链接。在ItemDataBound事件中,我们可以设置这些控件的 NavigateUrl 和 Text 属性,确保它们...

    Repeater表头排序,Repeater嵌套

    1. 数据源排序:在获取数据时,可以在后端(如SQL查询)或前端(如JavaScript数组)对数据进行排序。例如,可以使用Linq to SQL或Entity Framework来根据指定字段对数据进行排序。 2. 绑定事件处理:在Repeater的...

    asp.net2.0+sql2000留言本系统

    - SQL查询:使用SQL语句进行数据插入、更新和删除操作,例如INSERT INTO、UPDATE和DELETE命令。 - ADO.NET:ASP.NET 2.0通过ADO.NET与SQL Server 2000进行数据交互,提供强类型数据集,简化数据访问。 3. ASP.NET...

    Repeater嵌套

    本篇文章将深入探讨`Repeater`控件的嵌套使用,以及如何通过实例来理解这一技术。 `Repeater`控件主要用于在网页上展示来自数据源的数据,它提供了一个高度自定义的模板化界面,使得我们可以根据需求自由地设计数据...

    Asp.net+SQL创建简单无级别树

    3. **前端展示**:将后台获取的树形数据传递给Asp.net页面,可以使用控件如TreeView或Repeater来呈现树结构。在HTML中,使用嵌套的循环结构遍历并渲染每个节点及其子节点。 4. **优化性能**:虽然递归方法简单直观...

    ASP.NET 2.0+SQL Server 2005全程指南-源代码

    7.3.6 嵌套查询 7.3.7 插入记录并返回ID 7.3.8 同时更新多条记录 7.3.9 根据条件删除记录 7.4 存储过程 7.4.1 使用存储过程添加数据 7.4.2 使用存储过程查询数据 7.4.3 使用存储过程更新数据 7.4.4 使用...

    嵌套 Repeater 实现主从表浏览(MVC)

    3. **Northwind数据库**:这是一个经典的SQL Server示例数据库,包含了多种商业实体数据,如产品、客户、订单等。在这里,它作为数据源,为我们的主从表浏览提供数据。 4. **数据访问层(DAL)**:项目中可能包含一...

    repeater编辑更新删除 C#.Net实例代码

    在C#.NET中,Repeater通常与数据源(如SQL数据库、XML文件或自定义数据集)进行绑定。在这个实例中,`test.mdb`可能是一个Access数据库文件,用于存储要显示、编辑和删除的数据。数据绑定过程通过`DataSource`属性...

    asp.net在Repeater嵌套的Repeater中使用复选框详解

    然后,我们通过调用数据访问层的方法(如DBFun.dataSetTwo)来获取数据,并将它们分别绑定到顶层Repeater和嵌套的Repeater控件上。重要的一点是,顶层Repeater绑定数据后,需要调用DataBind()方法来完成数据绑定,而...

    Repeater 实现主从表浏览

    将查询结果绑定到主Repeater,然后在ItemDataBound事件中,对每个主表项,再次使用LINQ查询获取对应的从表项,并绑定到嵌套的子Repeater。 5. **自定义模板**:根据需求定制Repeater的模板,以显示所需的信息和格式...

    ASP.NET中repeater嵌套实现代码(附源码)

    具体来说,通过SQL查询将类别的信息和与之相关联的文章信息联合查询出来。之后,使用SqlDataReader读取查询结果,并将结果集中的数据创建成CategoryInfo对象列表。在读取数据时,特别注意到了类别ID的变化,当检测到...

    asp.net实现DataList与Repeater嵌套绑定的方法

    在本例中,我们将DataList作为外层容器,Repeater作为内层容器,用于显示层次结构的数据。 在给定的代码片段中,我们有一个名为`monitorTypeList`的DataList,它被设置为水平重复四列,并且在`ItemTemplate`中包含...

    无限级联绑定 repeater列表管理

    这涉及到SQL语句的编写,特别是对于无限级联结构,可能需要用到递归查询或自连接更新。 综上所述,这个项目涵盖了从数据库设计、后端编程到前端交互的多个环节,要求开发者具备扎实的ASP.NET、数据库和前端技术。...

    asp.net30分钟掌握无刷新Repeater共13页

    1.2 数据源绑定:Repeater控件能够绑定到各种数据源,如SQL数据库、XML文件、数组等。数据绑定是在ItemDataBound事件中完成的。 二、Repeater控件模板 2.1 ItemTemplate:这是Repeater控件的核心,用于定义每个...

    .net数据库操作文件 及 实例

    自己收集的一些数据库操作方面的文件,感觉不错,一起发出来... Repeater(嵌套) 数据库操作.txt 第01课:ADO.NET.ppt 第03课:GridView.ppt 第04课:DataList和Repeater.ppt 绑定分页详解.doc 希望对大家有用处

    VB.NET,ASP.NET,SQL数据库实际应用中的典型问题及解决办法

    - **查询优化**:避免全表扫描,使用`JOIN`、`WHERE`、`GROUP BY`语句时要合理,避免子查询嵌套过多。 - **存储过程与事务**:利用存储过程封装复杂的逻辑,使用事务确保数据一致性。 4. **VB.NET与ASP.NET与SQL ...

    ASP(net)小技巧.rar

    本压缩包中的资源聚焦于ASP.NET的一些实用小技巧,包括经典SQL语句、静态页面生成与分页、SQL注入防护以及Repeater控件的嵌套应用。 1. **经典SQL语句大全**:在ASP.NET中,数据库操作是常见的任务,掌握高效的SQL...

Global site tag (gtag.js) - Google Analytics