示例#1
0
        //GetCategoriesTreeByEvent
        public string GetCategoriesTreeByEvent(long?event_id)
        {
            if (!event_id.HasValue)
            {
                EventRepository er = new EventRepository(dataContext, CacheRepository);
                event_id = er.GetCurrent().ID;
            }
            List <IGrouping <int, spCategory_View_CategoriesForEventResult> > rootCategories = dataContext.spCategory_View_CategoriesForEvent(event_id, null, false).GroupBy(Q => Q.MainCategory_ID).ToList();

            if (rootCategories.Count() == 0)
            {
                return(String.Empty);
            }
            StringBuilder sb = new StringBuilder();

            sb.AppendLine("<ol class='category_list_main'><li class='category_list_header_container'><div class='category_list_header'>" + rootCategories[0].FirstOrDefault().EventTitle + "</div></li>");

            spCategory_View_CategoriesForEventResult        item;
            List <spCategory_View_CategoriesForEventResult> list;

            foreach (IGrouping <int, spCategory_View_CategoriesForEventResult> category in rootCategories)
            {
                item = category.FirstOrDefault();
                sb.AppendFormat("<li><div class='category_list_head' id='dv{0}'><img id='imgCollapse' src='{2}' /><img id='imgExpand' src='{3}' style='display:none' />&nbsp;{1}</div>", item.MainCategory_ID, item.MainCategoryTitle, AppHelper.CompressImage("arrow_collapse.png"), AppHelper.CompressImage("arrow_expand.png"));
                list = category.ToList();
                sb.AppendLine("<div class='category_list_body'><ul>");
                foreach (spCategory_View_CategoriesForEventResult ec in list)
                {
                    sb.AppendLine("<li>");
                    sb.AppendFormat("<a href='/Auction/CategoryView/{0}/{1}/{2}/{3}'>{4}</a> <font>[{5}]</font>", ec.EventCategory_ID, UrlParser.TitleToUrl(ec.EventTitle), UrlParser.TitleToUrl(ec.MainCategoryTitle), UrlParser.TitleToUrl(ec.CategoryTitle), ec.CategoryTitle, ec.AuctionCount);
                    sb.AppendLine("</li>");
                }
                sb.AppendLine("</ul></div>");
                sb.AppendLine("</li>");
            }
            sb.AppendLine("<li class='category_list_footer'>&nbsp;</li>");
            sb.AppendLine("</ol>");
            return(sb.ToString());
        }