/// <summary>
        /// Helper method that prepares FCC data
        /// </summary>
        /// <param name="city"></param>
        /// <param name="state"></param>
        /// <param name="county"></param>
        /// <param name="domain"></param>
        /// <returns></returns>
        private List <BroadbandSpeedGraph> PrepareFCCData(string city, string state, string domain, County county)
        {
            //Get the census code
            string newCity = char.ToUpper(city[0]) + city.Substring(1);
            int    code    = county.GetCensusCode(city, state, HomeController._database);

            //Get list of broadbands in that census code
            BroadbandAPI     ba         = new BroadbandAPI();
            List <Broadband> broadbands = (ba.GetBroadbandSpeed(code, city, state)).OrderByDescending(o => o.provider).ToList();

            //Prepare graph data
            List <BroadbandSpeedGraph> fccData = new List <BroadbandSpeedGraph>();

            foreach (Broadband br in broadbands)
            {
                if (br.speed != 0)
                {
                    fccData.Add(new BroadbandSpeedGraph(br.provider, br.speed));
                }
            }

            //Add user broadband
            Broadband        b             = new Broadband();
            List <Broadband> userBroadband = b.GetUserProviderData(city, state, domain, HomeController._database);

            foreach (Broadband br in userBroadband)
            {
                fccData.Add(new BroadbandSpeedGraph(br.provider, br.speed));
            }

            return(fccData);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Load FCC crowd source table partial view
        /// </summary>
        /// <param name="city"></param>
        /// <param name="state"></param>
        /// <param name="ordering"></param>
        /// <returns></returns>
        public IActionResult FCCTable(string city, string state, bool ordering)
        {
            //Get census code
            County county  = new County();
            string newCity = char.ToUpper(city[0]) + city.Substring(1);
            int    code    = county.GetCensusCode(city, state, HomeController._database);

            //Get list of broadbands
            BroadbandAPI     ba = new BroadbandAPI();
            List <Broadband> broadbands;

            //If ordering is ascending
            if (ordering)
            {
                broadbands = (ba.GetBroadbandSpeed(code, city, state)).OrderByDescending(o => o.provider).ToList();
            }
            else
            {
                broadbands = (ba.GetBroadbandSpeed(code, city, state)).OrderBy(o => o.provider).ToList();
            }

            return(PartialView(broadbands));
        }