Exemple #1
0
        private void btnFiltre_Click(object sender, EventArgs e)
        {
            ltvDetaylıAra.Items.Clear();
            if (cbKategori.SelectedIndex != 0 && cbUlke.SelectedIndex != 0)
            {
                //Kategori seçili , ülke seçili
                filmFiltrele();
            }
            else if (cbKategori.SelectedIndex == 0 && cbUlke.SelectedIndex != 0)
            {
                //Kategori seçili değil , ülke seçili
                filmFiltrele2();
            }
            else if (cbKategori.SelectedIndex != 0 && cbUlke.SelectedIndex == 0)
            {
                //Kategori seçili , ülke seçili değil
                filmFiltrele3();
            }
            else
            {
                //Kategori seçili değil , ülke seçili değil
                filmFiltrele4();
            }

            List <FilmFiltreDTO> tablo = (from film in films
                                          join rating in _ratingService.GetAllRatingService()
                                          on film.FilmID
                                          equals rating.FilmID
                                          group rating by rating.Film.FilmName
                                          into filmGrup
                                          select new FilmFiltreDTO
            {
                FilmID = filmGrup.FirstOrDefault().FilmID,
                FilmName = filmGrup.Key,
                Point = filmGrup.Average(x => x.Point),
                Category = filmGrup.FirstOrDefault().Film.Category.FirstOrDefault().CategoryName
            }).ToList();



            foreach (FilmFiltreDTO film in tablo)
            {
                ListViewItem lvi = new ListViewItem();
                lvi.Text = film.FilmName;
                lvi.SubItems.Add(film.Category);
                lvi.SubItems.Add(film.Point.ToString());
                lvi.Tag = film;
                ltvDetaylıAra.Items.Add(lvi);
            }
        }
        private void btnFiltre_Click(object sender, EventArgs e)
        {
            ltvDetaylıAra.Items.Clear();
            List <Film> films = null;

            if (string.IsNullOrEmpty(txtOyuncu.Text) && !string.IsNullOrEmpty(txtYonetmen.Text))
            {
                films = _filmServices.GetAllFilmService().ToList()
                        .Where(f => f.Category.Any(any => any.CategoryID == Convert.ToInt16(cbKategori.SelectedValue)))
                        .Where(f => f.Country.Any(any => any.CountryID == Convert.ToInt16(cbUlke.SelectedValue)))
                        .Where(f => f.Director.Any(any => any.DirectorName.ToLower().Contains(txtYonetmen.Text.ToLower())) || f.Director.Any(any => any.DirectorSurname.ToLower().Contains(txtYonetmen.Text.ToLower())))
                        .ToList();
            }
            else if (string.IsNullOrEmpty(txtYonetmen.Text) && !string.IsNullOrEmpty(txtOyuncu.Text))
            {
                films = _filmServices.GetAllFilmService().ToList()
                        .Where(f => f.Category.Any(any => any.CategoryID == Convert.ToInt16(cbKategori.SelectedValue)))
                        .Where(f => f.Country.Any(any => any.CountryID == Convert.ToInt16(cbUlke.SelectedValue)))
                        .Where(f => f.Actor.Any(any => any.ActorName.ToLower().Contains(txtOyuncu.Text.ToLower())) || f.Actor.Any(any => any.ActorSurname.ToLower().Contains(txtOyuncu.Text.ToLower())))
                        .ToList();
            }
            else if (string.IsNullOrEmpty(txtOyuncu.Text) && string.IsNullOrEmpty(txtYonetmen.Text))
            {
                films = _filmServices.GetAllFilmService().ToList()
                        .Where(f => f.Category.Any(any => any.CategoryID == Convert.ToInt16(cbKategori.SelectedValue)))
                        .Where(f => f.Country.Any(any => any.CountryID == Convert.ToInt16(cbUlke.SelectedValue)))
                        .ToList();
            }
            else
            {
                films = _filmServices.GetAllFilmService().ToList()
                        .Where(f => f.Category.Any(any => any.CategoryID == Convert.ToInt16(cbKategori.SelectedValue)))
                        .Where(f => f.Country.Any(any => any.CountryID == Convert.ToInt16(cbUlke.SelectedValue)))
                        .Where(f => f.Actor.Any(any => any.ActorName.ToLower().Contains(txtOyuncu.Text.ToLower())) || f.Actor.Any(any => any.ActorSurname.ToLower().Contains(txtOyuncu.Text.ToLower())))
                        .Where(f => f.Director.Any(any => any.DirectorName.ToLower().Contains(txtYonetmen.Text.ToLower())) || f.Director.Any(any => any.DirectorSurname.ToLower().Contains(txtYonetmen.Text.ToLower())))
                        .ToList();
            }

            List <FilmFiltreDTO> tablo = (from film in films
                                          join rating in _ratingService.GetAllRatingService()
                                          on film.FilmID
                                          equals rating.FilmID
                                          group rating by rating.Film.FilmName
                                          into filmGrup
                                          select new FilmFiltreDTO
            {
                FilmID = filmGrup.FirstOrDefault().FilmID,
                FilmName = filmGrup.Key,
                Point = filmGrup.Average(x => x.Point),
                Category = filmGrup.FirstOrDefault().Film.Category.FirstOrDefault().CategoryName
            }).ToList();



            foreach (FilmFiltreDTO film in tablo)
            {
                ListViewItem lvi = new ListViewItem();
                lvi.Text = film.FilmName;
                lvi.SubItems.Add(film.Category);
                lvi.SubItems.Add(film.Point.ToString());
                lvi.Tag = film;
                ltvDetaylıAra.Items.Add(lvi);
            }
        }