Hey everyone :)
I've got a problem with creating a hierarchy using nested repeaters.
Code:
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "[\"FullName\"]") %>
<br />
<asp:Repeater ID="Repeater2" runat="Server" DataSource='<%# ((DataRowView)Container.DataItem).Row.GetChildRows("ParentChild") %>'>
<ItemTemplate>
<%# DataBinder.Eval(Container.DataItem, "[\"FullName\"]") %>
<br />
</ItemTemplate>
</asp:Repeater>
</ItemTemplate>
</asp:Repeater>
protected void Page_Load(object sender, EventArgs e)
{
string strSql = "SELECT [ID], [Parent_ID], FullName, FirstName, LastName FROM Individual";
SqlConnection conn = new SqlConnection("Data Source=localhost,2819;Initial Catalog=Connections;Integrated Security=True");
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter();
SqlCommand cmd = new SqlCommand(strSql, conn);
cmd.CommandType = CommandType.Text;
da.SelectCommand = cmd;
da.Fill(ds);
da.Dispose();
ds.DataSetName = "Individuals";
ds.Tables[0].TableName = "Individual";
DataRelation relation = new DataRelation("ParentChild",
ds.Tables["Individual"].Columns["ID"],
ds.Tables["Individual"].Columns["Parent_ID"],
true);
relation.Nested = true;
ds.Relations.Add(relation);
Repeater1.DataSource = ds.Tables["Individual"];
Repeater1.DataBind();
conn.Close();
}
Basically what happens, is it creates and displays the relationships...but for example, does this:
Dave Richardson
Vincent Finley
Bryan Siders
Hank Hill
Wes Craven
Bobby Brown
Bryan Siders
John Doe
Karla Norwood
Hank Hill
Wes Craven
Stewie Griffin
Stewie Griffin
John Doe
Jim Cardwell
Dave Richardson
Vincent Finley
Bobby Brown
Karla Norwood
In other words, after it lists "Karla Norwood" as a child of "Bryan Siders"...it shouldn't list Karla Norwood later on in the list as a Master having no children! Can anyone help? This is how the output SHOULD be:
Jim Cardwell
Dave Richardson
Vincent Finley
Bryan Siders
John Doe
Karla Norwood
Hank Hill
Wes Craven
Stewie Griffin
Bobby Brown
Thanks in advance!!!