Как бороться с 3 уровнями иерархии, с использованием C# ASP.NET управления Repeater
Я работаю с отображением новостных статей, я хотел бы сделать эти новости отображаемыми по годам ==> месяцам ==> дням . Пользовательский интерфейс будет отображаться следующим образом:
News 2019 >> January (2) >>01/02/2019 articles >>01/09/2019 articles News 2018 >> December (2) >>12/02/2019 articles >>12/09/2019 articles News 2017 >> January (3) >>01/02/2019 articles >>01/09/2019 articles News 2016 >> January (1) >>01/02/2019 articles >>01/09/2019 articles
Но я могу только сделать так, чтобы он отображался следующим образом.
News 2019 >> January (2) News 2018 >> December (2) News 2017 >> January (3)
Что я уже пробовал:
protected void loadyears() { con.Open(); BindMenu(); try { //Create years for news view SqlCommand scmdY = new SqlCommand("select distinct year([NewsDate]) as Years from [WebSiteNewsMaint] order by Years desc ", con); SqlDataAdapter cmdY = new SqlDataAdapter(scmdY); DataSet ds = new DataSet(); cmdY.Fill(ds, "WSNewsYears"); //Create Months for news view SqlCommand scmdM = new SqlCommand("select top(100) percent Datename(month,newsdate) as NMDate, MONTH(NewsDate) as MDate, COUNT(Newsid) AS NArticle, year([NewsDate]) as Years from [WebSiteNewsMaint] GROUP BY Datename(month,newsdate) ,month(newsdate),year(newsdate) ORDER BY MONTH(NewsDate) DESC", con); SqlDataAdapter cmdM = new SqlDataAdapter(scmdM); cmdM.Fill(ds, "WSNewsMonths"); //Create the relation between the years and months views ds.Relations.Add("YearMonthRelation", ds.Tables["WSNewsYears"].Columns["Years"], ds.Tables["WSNewsMonths"].Columns["Years"]); Years.DataSource = ds.Tables["WSNewsYears"]; Page.DataBind(); } catch (SqlException ex) { errormessage.Text = ex.Message.ToString(); } finally { con.Close(); } }