Beispiel #1
0
 // GET: DataShow
 public ActionResult Index()
 {
     using (var dbContext = new AdScoreShowDbContext())
     {
         AdvertViewModel viewModel = new AdvertViewModel();
         var             datas     = dbContext.Advertisements.Include(b => b.Brand).Include(s => s.Segment).ToList();
     }
     return(View());
 }
Beispiel #2
0
        public ActionResult FindScore_2()
        {
            using (var dbContext = new AdScoreShowDbContext())
            {
                var result = dbContext.AdvertAireds.Max(a => a.Score_2.Value);

                ViewBag.Score_2_Max = result;

                return(View("HighestScore2"));
            }
        }
Beispiel #3
0
        public ActionResult FindBestScore()
        {
            using (var dbContext = new AdScoreShowDbContext())
            {
                var result1 = dbContext.AdvertAireds.Max(a => a.Score_1.Value);
                var result2 = dbContext.AdvertAireds.Max(a => a.Score_2.Value);
                int result  = 0;
                int score1  = (result1 * 100) / 30;


                if (score1 >= result2)
                {
                    result = result1;
                }
                else
                {
                    result = result2;
                }

                ViewBag.BestScore = result;

                return(View("BestScore"));
            }
        }
        private void SeedDatabase(IEnumerable <CsvRecord> records)
        {
            foreach (CsvRecord record in records)
            {
                //check if the value of the segment is already present in the database or not
                //if not, insert it in the database
                if (!ValueAlreadyPresent(record, 's'))
                {
                    using (var dbContext = new AdScoreShowDbContext())
                    {
                        var segment = new Segment {
                            Category = record.Segment
                        };
                        dbContext.Segments.Add(segment);
                        dbContext.SaveChanges();
                    }
                }

                //check if the value of the market is already present in the database or not
                //if not, insert it in the database
                if ((!ValueAlreadyPresent(record, 'm')))
                {
                    using (var dbContext = new AdScoreShowDbContext())
                    {
                        var market = new Market {
                            Country = record.Market
                        };
                        dbContext.Markets.Add(market);
                        dbContext.SaveChanges();
                    }
                }

                //check if the value of the brand is present in the database or not
                //if not, insert it in the database
                if (!ValueAlreadyPresent(record, 'b'))
                {
                    using (var dbContext = new AdScoreShowDbContext())
                    {
                        var segment = dbContext.Segments.Single(s => s.Category == record.Segment);
                        var brand   = new Brand
                        {
                            Name      = record.Brand,
                            SegmentID = segment.Id
                        };
                        dbContext.Brands.Add(brand);
                        dbContext.SaveChanges();
                    }
                }

                //check if the value of the couple (Copy_Name, Copy_Duration) is present in the database or not
                //if not, insert a new advertisement in the database
                if (!ValueAlreadyPresent(record, 'a'))
                {
                    using (var dbContext = new AdScoreShowDbContext())
                    {
                        var segment = dbContext.Segments.Single(s => s.Category == record.Segment);
                        var brand   = dbContext.Brands.Single(b => b.Name == record.Brand);

                        var advertisement = new Advertisement
                        {
                            Copy_Name     = record.Copy_Name,
                            Copy_Duration = record.Copy_Duration,
                            SegmentID     = segment.Id,
                            BrandID       = brand.Id
                        };
                        dbContext.Advertisements.Add(advertisement);
                        dbContext.SaveChanges();
                    }
                }

                //check if the couple (AdvertisementID, MarketID) is present in the database or not
                //if not, finally, insert it in the database
                if (!ValueAlreadyPresent(record, 'n'))
                {
                    using (var dbContext = new AdScoreShowDbContext())
                    {
                        var advertisement = dbContext.Advertisements.Single(a => a.Copy_Name == record.Copy_Name & a.Copy_Duration == record.Copy_Duration);
                        var market        = dbContext.Markets.Single(m => m.Country == record.Market);

                        var advertAired = new AdvertAired
                        {
                            AdvertisementID = advertisement.Id,
                            MarketID        = market.Id,
                            Year            = record.Year,
                            Score_1         = record.Score_1,
                            Score_2         = record.Score_2
                        };
                        dbContext.AdvertAireds.Add(advertAired);
                        dbContext.SaveChanges();
                    }
                }
            }
        }
        private bool ValueAlreadyPresent(CsvRecord record, char c)
        {
            bool result = false;

            using (var dbContext = new AdScoreShowDbContext())
            {
                switch (c)
                {
                case 's':
                    Segment segment = dbContext.Segments.SingleOrDefault(s => s.Category == record.Segment);
                    if (segment != null)
                    {
                        result = true;
                    }
                    break;

                case 'b':
                    string bd    = record.Brand;
                    Brand  brand = dbContext.Brands.SingleOrDefault(b => b.Name == record.Brand);
                    if (brand != null)
                    {
                        result = true;
                    }
                    break;

                case 'm':
                    Market market = dbContext.Markets.SingleOrDefault(m => m.Country == record.Market);
                    if (market != null)
                    {
                        result = true;
                    }
                    break;

                case 'a':
                    Advertisement advert = dbContext.Advertisements
                                           .SingleOrDefault(a => a.Copy_Name == record.Copy_Name &&
                                                            a.Copy_Duration == record.Copy_Duration);
                    if (advert != null)
                    {
                        result = true;
                    }
                    break;

                case 'n':
                    Advertisement ads = dbContext.Advertisements
                                        .SingleOrDefault(a => a.Copy_Name == record.Copy_Name
                                                         & a.Copy_Duration == record.Copy_Duration);
                    Market      mkt = dbContext.Markets.SingleOrDefault(m => m.Country == record.Market);
                    AdvertAired adv = dbContext.AdvertAireds.SingleOrDefault(a => a.AdvertisementID == ads.Id && a.MarketID == mkt.Id);

                    if (adv != null)
                    {
                        result = true;
                    }
                    break;

                default:
                    break;
                }
            }
            return(result);
        }