public DataSet GetAllMoviesFromIMDBBySearchCriteria(MovieSearchIMDBCriteria criteria)
        {
            DataSet dtStMovies;
            SqlParameter[] arrParam = new SqlParameter[9];
            arrParam[0] = new SqlParameter("@searchType", criteria.SearchType);
            arrParam[1] = new SqlParameter("@keywords", criteria.Keywords);
            arrParam[2] = new SqlParameter("@language", criteria.Language);
            arrParam[3] = new SqlParameter("@year", criteria.Year);
            arrParam[4] = new SqlParameter("@rating", criteria.Rating);
            arrParam[5] = new SqlParameter("@mpaaRating", criteria.MpaaRating);
            arrParam[6] = new SqlParameter("@isTop250", criteria.IsTop250);
            arrParam[7] = new SqlParameter("@oscars", criteria.Oscars);
            arrParam[8] = new SqlParameter("@genre", criteria.Genre);

            StringBuilder sbSPParams = new StringBuilder();
            foreach (var param in arrParam)
            {
                sbSPParams.Append(param.ParameterName + ":" + param.Value + " & ");
            }
            sbSPParams.Remove(sbSPParams.Length - 3, 3);
            PlanetM_Utility.LogWrapper.LogInfo(string.Format("Executing SP:{0} Parameter Details>> {1}", StoredProcedure.GetAllMoviesBySearchCriteriaFromMiniIMDB, sbSPParams.ToString()));
            dtStMovies = SqlHelper.ExecuteDataset(m_Connection_String, CommandType.StoredProcedure, StoredProcedure.GetAllMoviesBySearchCriteriaFromMiniIMDB, arrParam);
            return dtStMovies;
        }
Пример #2
0
        private void buttonSearch_Click(object sender, EventArgs e)
        {
            criteria = new AbstractLayer.MovieSearchIMDBCriteria();

            criteria.SearchType = comboBoxSearchType.SelectedItem.ToString();
            criteria.Keywords = textBoxKeywords.Text.Trim();
            criteria.Language = comboBoxLanguage.SelectedItem.ToString();

            criteria.Year = comboBoxYear.SelectedItem.ToString();
            Regex regex = new Regex(@"(ALL)|(^)|(&)|(\s\s)");
            criteria.Rating = regex.Replace(comboBoxRating.SelectedItem.ToString(), match =>
            {
                switch (match.ToString())
                {
                    case "ALL":
                        return "Rating = Rating";
                    case "":
                        return "Rating ";
                    case "&":
                        return "AND Rating";
                    case "  ":
                        return "";
                }
                return match.ToString();
            });
            criteria.MpaaRating = comboBoxMpaaRating.SelectedItem.ToString();

            criteria.IsTop250 = comboBoxTop250.SelectedItem.ToString();
            criteria.Oscars = comboBoxOscars.SelectedItem.ToString();
            if (checkedListBoxGenre.CheckedIndices.Contains(0) && checkedListBoxGenre.CheckedItems.Count == checkedListBoxGenre.Items.Count)
            {
                criteria.Genre = "ALL";
            }
            else if (checkedListBoxGenre.CheckedItems.Count < checkedListBoxGenre.Items.Count - 1)
            {
                criteria.Genre = "";
                foreach (var genre in checkedListBoxGenre.CheckedItems)
                {
                    criteria.Genre += genre.ToString() + ",";
                }
                if (checkedListBoxGenre.CheckedItems.Count > 0)
                    criteria.Genre = criteria.Genre.Remove(criteria.Genre.Length - 1, 1);
            }

            DataTable movies = dbObj.GetAllMoviesFromIMDBBySearchCriteria(criteria).Tables[0];
            labelResults.Text = movies.Rows.Count.ToString();
            int iterator = 0;
            dgMovies.Rows.Clear();
            foreach (DataRow drMovie in movies.AsEnumerable())
            {
                dgMovies.Rows.Add();
                dgMovies.Rows[iterator].Cells["ImdbID"].Value = drMovie["ImdbID"];
                dgMovies.Rows[iterator].Cells["Title"].Value = drMovie["Title"];
                dgMovies.Rows[iterator].Cells["Language"].Value = drMovie["Language"];
                if (drMovie["Year"].ToString() == "0")
                    dgMovies.Rows[iterator].Cells["Year"].Value = "NA";
                else
                    dgMovies.Rows[iterator].Cells["Year"].Value = drMovie["Year"].ToString();
                if (drMovie["Rating"].ToString() == "0.00")
                    dgMovies.Rows[iterator].Cells["Rating"].Value = "NA";
                else
                    dgMovies.Rows[iterator].Cells["Rating"].Value = drMovie["Rating"].ToString();
                if (drMovie["Genre"].ToString().Length > 0)
                    dgMovies.Rows[iterator].Cells["Genre"].Value = drMovie["Genre"];
                else
                    dgMovies.Rows[iterator].Cells["Genre"].Value = "";

                if (drMovie["MpaaRating"].ToString().Length > 0)
                    dgMovies.Rows[iterator].Cells["MpaaRating"].Value = drMovie["MpaaRating"];
                else
                    dgMovies.Rows[iterator].Cells["MpaaRating"].Value = "";
                dgMovies.Rows[iterator].Cells["Awards"].Value = drMovie["Awards"];
                dgMovies.Rows[iterator].Cells["Nominations"].Value = drMovie["Nominations"];
                dgMovies.Rows[iterator].Cells["Top250"].Value = drMovie["Top250"];
                dgMovies.Rows[iterator].Cells["Oscars"].Value = drMovie["Oscars"];

                ApplyStyleForRow(iterator, drMovie["Language"].ToString(), Convert.ToInt32(drMovie["Year"]), Convert.ToDouble(drMovie["Rating"]), drMovie["MpaaRating"].ToString(), Convert.ToInt32(drMovie["Awards"]), Convert.ToInt32(drMovie["Nominations"]), Convert.ToInt32(drMovie["Top250"]), Convert.ToInt32(drMovie["Oscars"]));
                iterator++;
            }
            groupBoxExport.Enabled = true;
        }