Announcement

Collapse
No announcement yet.

Problem mit "NestedRepeater"

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Problem mit "NestedRepeater"

    Hallo Leute

    Ich plage mich nun schon seit Stunden mit einem Problem rum...Ich muss eine Datnbank abfragen und die Ergebnisse gruppiert darstellen. Mein Problem, der erste Satz der Abfrage wird richtig dargestellt, vom zweiten Satz fehlt jede Spur. Der Code scheint "proper" zu sein da die Routine durchläuft. Könnt Ihr mir helfen?

    "code behind":

    Code:
    using System;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.IO;
    using System.Data;
    using System.Data.SqlClient;
    
    
    public partial class Sites_DataList_intranet_jobs_recursive : System.Web.UI.Page
    {
    //--------------------------------------------------------------------------------\\
    
    
        //-----------------------------------------------------------------------\\
        private void Page_Load(object sender, System.EventArgs e)
        {
            SqlConnection con = new SqlConnection("server=server;uid=uid;pwd=pwd;database=db");
            SqlDataAdapter sdap =
            new SqlDataAdapter("SELECT DISTINCT a.name as CountryName, a.code FROM master_country as a INNER JOIN jobs as b ON a.code = b.country WHERE (b.status = 'A') ORDER BY a.name ASC; SELECT id, country, name as JobTitle FROM jobs WHERE (status = 'A') ORDER BY country, name", con);
    
            DataSet ds = new DataSet();
            
            sdap.Fill(ds);
            ds.Relations.Add(
    
            new DataRelation("NestThem", ds.Tables[0].Columns["code"], ds.Tables[1].Columns["country"])
             );
    
            myRepeater.DataSource = ds;
            myRepeater.DataBind();
        }
        //-----------------------------------------------------------------------\\
    
        //-----------------------------------------------------------------------\\
        private void myRepeater_ItemDataBound(object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e)
        {
            DataRowView dv = e.Item.DataItem as DataRowView;
            if (dv != null)
            {
                Repeater nestedRepeater = e.Item.FindControl("NestedRepeater") as Repeater;
                if (nestedRepeater != null)
                {
                    nestedRepeater.DataSource = dv.CreateChildView("NestThem");
                    nestedRepeater.DataBind();
                }
            }
        }
        //-----------------------------------------------------------------------\\
    
    //--------------------------------------------------------------------------------\\
    
    }

    Form:

    HTML Code:
    <TABLE id="Table1" border="0">
            <asp:repeater id="myRepeater" runat="server">
            <ItemTemplate>
            <TR>
            <TD><b><u><%#DataBinder.Eval(Container.DataItem, "CountryName")%></u></b></TD>
            </TR>
                
                <asp:repeater id="NestedRepeater" runat="server">
                <ItemTemplate>
                <TR>
                <TD>
                <%#Eval("JobTitle")%>
                <br>
                <%#Eval("country")%>
                </TD>
                </TR>
                </ItemTemplate>
                </asp:repeater>
                
            </ItemTemplate>
            </asp:repeater>
            </TABLE>
    ...vielen Dank
Working...
X