Exemple #1
0
        public List <ErrorSummaryViewModel> ErrorList(ApiCall call)
        {
            string weekname = call.GetValue("weekname");
            var    sitedb   = call.WebSite.SiteDb();

            List <ErrorSummaryViewModel> errors = new List <ErrorSummaryViewModel>();
            Sequence <SiteErrorLog>      repo   = string.IsNullOrEmpty(weekname) ? sitedb.ErrorLog : sitedb.LogByWeek <SiteErrorLog>(weekname);
            string baseurl  = call.WebSite.BaseUrl();
            var    allitems = repo.AllItemList();

            foreach (var item in allitems.GroupBy(o => o.Id))
            {
                ErrorSummaryViewModel model = new ErrorSummaryViewModel();
                model.Id    = item.Key;
                model.Count = item.Count();
                model.Url   = item.First().Url;
                try
                {
                    model.PreviewUrl = Lib.Helper.UrlHelper.Combine(baseurl, model.Url);
                }
                catch (Exception)
                {
                    model.PreviewUrl = baseurl;
                }

                errors.Add(model);
            }
            return(errors.OrderByDescending(o => o.Count).ToList());
        }