public SqlDataReader Find(string key, BBSSearchOption option, DataTable boards) { string boardids = ""; string sql = "select * from UDS_Bbs_ForumItem"; SqlDataReader dr = null; if (option.searchtype == BBSSearchType.author) { sql += " where sender like '%" + key + "%'"; } else if (option.searchtype == BBSSearchType.title) { sql += " where title like '%" + key + "%'"; } if (option.BoardID != 0) { sql += " and board_id=" + option.BoardID; } else { foreach (DataRow row in boards.Rows) { boardids += row["board_id"].ToString() + ","; } if (boardids != "") { boardids = boardids.Substring(0, boardids.Length - 1); } sql += " and board_id in (" + boardids + ")"; } if (option.TimeBound != TimeSpan.MaxValue) { //计算时间段 sql += " and datediff(d,send_time,getdate())< " + option.TimeBound.Days.ToString(); } UDS.Components.Database db = new UDS.Components.Database(); SqlParameter[] prams = { db.MakeInParam("@SQL", SqlDbType.NText, 5000, sql), }; db.RunProc("sp_RunSQL", prams, out dr); return(dr); }
private void btn_OK_Click(object sender, System.EventArgs e) { tbl_Search.Visible = false; dgrd_Result.Visible = true; SqlDataReader dr_result = null; UDS.Components.BBSClass bbs = new UDS.Components.BBSClass(); BBSSearchOption option = new BBSSearchOption(); option.searchtype = (rbtn_author.Checked)?BBSSearchType.author:BBSSearchType.title; switch (ddl_Time.SelectedValue) { case "0": option.TimeBound = TimeSpan.MaxValue; break; case "d": option.TimeBound = new TimeSpan(Int32.Parse((tbx_Time.Text.Trim() == "")?"1":tbx_Time.Text.Trim()), 0, 0, 0); break; case "w": option.TimeBound = new TimeSpan(Int32.Parse((tbx_Time.Text.Trim() == "")?"1":tbx_Time.Text.Trim()) * 7, 0, 0, 0); break; case "m": option.TimeBound = new TimeSpan(Int32.Parse((tbx_Time.Text.Trim() == "")?"1":tbx_Time.Text.Trim()) * 30, 0, 0, 0); break; case "y": option.TimeBound = new TimeSpan(Int32.Parse((tbx_Time.Text.Trim() == "")?"1":tbx_Time.Text.Trim()) * 365, 0, 0, 0); break; } option.BoardID = Int32.Parse(dll_Board.SelectedValue); UDS.Components.BBSClass bbs1 = new UDS.Components.BBSClass(); if (Request.Cookies["UDSBBSAdmin"].Value == "1") { dr_board = bbs1.GetAllBBSBoard(); } else { dr_board = bbs1.GetBBSBoard(Request.Cookies["UserName"].Value); } dr_result = bbs.Find(tbx_Key.Text.Trim(), option, UDS.Components.Tools.ConvertDataReaderToDataTable(dr_board)); DataTable dt_result = UDS.Components.Tools.ConvertDataReaderToDataTable(dr_result); dgrd_Result.DataSource = dt_result.DefaultView; dgrd_Result.DataBind(); }
private void btn_OK_Click(object sender, System.EventArgs e) { tbl_Search.Visible = false; dgrd_Result.Visible = true; SqlDataReader dr_result = null; UDS.Components.BBSClass bbs = new UDS.Components.BBSClass(); BBSSearchOption option = new BBSSearchOption(); option.searchtype = (rbtn_author.Checked)?BBSSearchType.author:BBSSearchType.title; switch(ddl_Time.SelectedValue) { case "0": option.TimeBound = TimeSpan.MaxValue; break; case "d": option.TimeBound = new TimeSpan(Int32.Parse((tbx_Time.Text.Trim()=="")?"1":tbx_Time.Text.Trim()),0,0,0); break; case "w": option.TimeBound = new TimeSpan(Int32.Parse((tbx_Time.Text.Trim()=="")?"1":tbx_Time.Text.Trim())*7,0,0,0); break; case "m": option.TimeBound = new TimeSpan(Int32.Parse((tbx_Time.Text.Trim()=="")?"1":tbx_Time.Text.Trim())*30,0,0,0); break; case "y": option.TimeBound = new TimeSpan(Int32.Parse((tbx_Time.Text.Trim()=="")?"1":tbx_Time.Text.Trim())*365,0,0,0); break; } option.BoardID = Int32.Parse(dll_Board.SelectedValue); UDS.Components.BBSClass bbs1 = new UDS.Components.BBSClass(); if(Request.Cookies["UDSBBSAdmin"].Value=="1") dr_board = bbs1.GetAllBBSBoard(); else dr_board = bbs1.GetBBSBoard( Server.UrlDecode(Request.Cookies["UserName"].Value)); dr_result = bbs.Find(tbx_Key.Text.Trim(),option,UDS.Components.Tools.ConvertDataReaderToDataTable(dr_board)); DataTable dt_result = UDS.Components.Tools.ConvertDataReaderToDataTable(dr_result); dgrd_Result.DataSource = dt_result.DefaultView; dgrd_Result.DataBind(); }
public SqlDataReader Find(string key,BBSSearchOption option,DataTable boards) { string boardids = ""; string sql = "select * from UDS_Bbs_ForumItem"; SqlDataReader dr = null; if(option.searchtype==BBSSearchType.author) { sql += " where sender like '%"+key+"%'"; } else if(option.searchtype==BBSSearchType.title) { sql += " where title like '%"+key+"%'"; } if(option.BoardID!=0) { sql += " and board_id="+option.BoardID; } else { foreach(DataRow row in boards.Rows) { boardids += row["board_id"].ToString() + ","; } if(boardids!="") boardids = boardids.Substring(0,boardids.Length-1); sql += " and board_id in ("+boardids+")"; } if(option.TimeBound!=TimeSpan.MaxValue) { //����ʱ��� sql += " and datediff(d,send_time,getdate())< "+option.TimeBound.Days.ToString(); } UDS.Components.Database db = new UDS.Components.Database(); SqlParameter[] prams = { db.MakeInParam("@SQL", SqlDbType.NText, 5000, sql), }; db.RunProc("sp_RunSQL",prams,out dr); return dr; }