FeedbackScript.Admin.Models.ReportsDomain.GetTopTenList C# (CSharp) Method

GetTopTenList() public method

public GetTopTenList ( string txtDateFrom, string txtDateTo ) : IEnumerable
txtDateFrom string
txtDateTo string
return IEnumerable
        public IEnumerable<TopPages> GetTopTenList(string txtDateFrom, string txtDateTo)
        {
            try
            {
               var results = dataContext.spGetTopPages(Convert.ToDateTime(txtDateFrom), Convert.ToDateTime(txtDateTo));
               IEnumerable<TopPages> res = from resp in results
                                           //where resp.VolumeOfFeedback >= resp.Mean
                                           orderby resp.VolumeOfFeedback descending
                                            select new TopPages
                                            {
                                                Agency = resp.Agency,
                                                URL = resp.URL,
                                                VolumeFeedBack = Convert.ToInt32(resp.VolumeOfFeedback),
                                                Pfeedback = Convert.ToDouble(resp.Positive),
                                                Nfeedback = Convert.ToDouble(resp.Negative),
                                                Mean = Convert.ToInt32(resp.Mean)
                                            };

                return res;
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

Usage Example

        public ActionResult Toptenpages(string txtDateFrom, string txtDateTo, string Export)
        {
            try
            {
                ViewData["FromDate"] = DateTime.Today.Subtract(TimeSpan.FromDays(365)).ToShortDateString();
                ViewData["ToDate"] = DateTime.Today.ToShortDateString();
                string strClientUserName = Environment.UserName.ToString().Trim();
                if (txtDateFrom == null | txtDateTo == null)
                {
                    txtDateTo = System.DateTime.Today.ToShortDateString();
                    txtDateFrom = System.DateTime.Today.Subtract(TimeSpan.FromDays(30)).ToShortDateString();
                }

                ViewData["txtDateFrom"] = txtDateFrom;
                ViewData["txtDateTo"] = txtDateTo;

                bool mFromDateStatus = isDate(txtDateFrom);
                bool mToDateStatus = isDate(txtDateTo);

                if (mFromDateStatus == false)
                {
                    txtDateFrom = System.DateTime.Today.Subtract(TimeSpan.FromDays(30)).ToShortDateString();
                    ModelState.AddModelError("FromDateValidation", "Invalid Date Range");
                }
                if (mToDateStatus == false)
                {
                    ModelState.AddModelError("ToDateValidation", "Invalid Date Range");
                    txtDateTo = System.DateTime.Today.ToShortDateString();
                }
                ViewData["txtDateFrom"] = txtDateFrom;
                ViewData["txtDateTo"] = txtDateTo;
                if (!ModelState.IsValid)
                {
                    return View();
                }
                else
                {
                    if (Convert.ToDateTime(txtDateFrom) > Convert.ToDateTime(txtDateTo))
                    {
                        ModelState.AddModelError("FromDateValidation", "Invalid Date Range");
                        ModelState.AddModelError("ToDateValidation", "Invalid Date Range");
                        return View();
                    }
                }
                ReportsDomain _reportsDomain = new ReportsDomain(ConfigurationManager.ConnectionStrings["FeedbackScriptConnectionString"].ConnectionString);

                var orderedResultsPerPage = _reportsDomain.GetTopTenList(txtDateFrom, txtDateTo);

                bool m = isDate(txtDateFrom);
                if (Export != null)
                {
                    ExportToExcelTopTenPages(orderedResultsPerPage.ToList(),txtDateFrom.ToString(),txtDateTo.ToString());
                }

                if (_reportsDomain.GetTopTenList(txtDateFrom, txtDateTo).Count() <= 0)
                    ModelState.AddModelError("RecordCount", "No results found for the specified search criteria");

                return View(orderedResultsPerPage);
            }
            catch (Exception ex)
            {
                ViewData["ErrorMessage"] = ex.Message + ex.StackTrace;
                return View("Error");
            }
        }