public static SearchKeyword AddSearchKeyword(SearchKeyword searchKeyword)
        {
            string sql =
                "INSERT SearchKeywords (Keyword, SearchCount)" +
                "VALUES (@Keyword, @SearchCount)";

            sql += " ; SELECT @@IDENTITY";

            try
            {
                SqlParameter[] para = new SqlParameter[]
                {
                    new SqlParameter("@Keyword", searchKeyword.Keyword),
                    new SqlParameter("@SearchCount", searchKeyword.SearchCount)
                };

                int newId = DBHelper.GetScalar(sql, para);
                return GetSearchKeywordById(newId);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                return null;
            }
        }
 /// <summary>
 /// 根据关键字搜索时,进行搜索计数
 /// </summary>
 /// <param name="keyword"></param>
 public static void Search(string keyword)
 {
     SearchKeyword skw = SearchKeywordService.GetKeyword(keyword);
     if (skw == null)
     {
         skw = new SearchKeyword();
         skw.Keyword = keyword;
         skw.SearchCount = 1;
         SearchKeywordService.AddSearchKeyword(skw);
     }
     else
     {
         skw.SearchCount++;
         SearchKeywordService.ModifySearchKeyword(skw);
     }
 }
        /// <summary>
        /// ���ݹؼ������ݻ�ùؼ��ֶ���
        /// </summary>
        /// <param name="keyword"></param>
        /// <returns></returns>
        public static SearchKeyword GetKeyword(string keyword)
        {
            string sql = "SELECT * FROM SearchKeywords WHERE keyword = @keyword";

            using (SqlDataReader reader = DBHelper.GetReader(sql, new SqlParameter("@keyword", keyword)))
            {
                if (reader.Read())
                {
                    SearchKeyword searchKeyword = new SearchKeyword();
                    searchKeyword.Id = (int)reader["Id"];
                    searchKeyword.Keyword = (string)reader["Keyword"];
                    searchKeyword.SearchCount = (int)reader["SearchCount"];
                    reader.Close();
                    return searchKeyword;
                }
                else
                {
                    reader.Close();
                    return null;
                }
            }
        }
        public static SearchKeyword GetSearchKeywordById(int id)
        {
            string sql = "SELECT * FROM SearchKeywords WHERE Id = @Id";

            try
            {
                SqlDataReader reader = DBHelper.GetReader(sql, new SqlParameter("@Id", id));
                if (reader.Read())
                {
                    SearchKeyword searchKeyword = new SearchKeyword();

                    searchKeyword.Id = (int)reader["Id"];
                    searchKeyword.Keyword = (string)reader["Keyword"];
                    searchKeyword.SearchCount = (int)reader["SearchCount"];

                    reader.Close();

                    return searchKeyword;
                }
                else
                {
                    reader.Close();
                    return null;
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                return null;
            }
        }
 public static void DeleteSearchKeyword(SearchKeyword searchKeyword)
 {
     DeleteSearchKeywordById( searchKeyword.Id );
 }
        private static IList<SearchKeyword> GetSearchKeywordsBySql( string sql, params SqlParameter[] values )
        {
            List<SearchKeyword> list = new List<SearchKeyword>();

            try
            {
                DataTable table = DBHelper.GetDataSet( sql, values );

                foreach (DataRow row in table.Rows)
                {
                    SearchKeyword searchKeyword = new SearchKeyword();

                    searchKeyword.Id = (int)row["Id"];
                    searchKeyword.Keyword = (string)row["Keyword"];
                    searchKeyword.SearchCount = (int)row["SearchCount"];

                    list.Add(searchKeyword);
                }

                return list;
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                return null;
            }
        }
        public static void ModifySearchKeyword(SearchKeyword searchKeyword)
        {
            string sql =
                "UPDATE SearchKeywords " +
                "SET " +
                    "Keyword = @Keyword, " +
                    "SearchCount = @SearchCount " +
                "WHERE Id = @Id";

            try
            {
                SqlParameter[] para = new SqlParameter[]
                {
                    new SqlParameter("@Id", searchKeyword.Id),
                    new SqlParameter("@Keyword", searchKeyword.Keyword),
                    new SqlParameter("@SearchCount", searchKeyword.SearchCount)
                };

                DBHelper.ExecuteCommand(sql, para);
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
                throw e;
            }
        }
 public static void ModifySearchKeyword(SearchKeyword searchKeyword)
 {
     SearchKeywordService.ModifySearchKeyword(searchKeyword);
 }
 public static void DeleteSearchKeyword(SearchKeyword searchKeyword)
 {
     SearchKeywordService.DeleteSearchKeyword(searchKeyword);
 }
 public static SearchKeyword AddSearchKeyword(SearchKeyword searchKeyword)
 {
     return SearchKeywordService.AddSearchKeyword(searchKeyword);
 }