using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
namespace SampleCS.Reply
{
/// <summary>
/// Search에 대한 요약 설명입니다.
/// </summary>
public class Search : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid DataGrid1;
protected System.Web.UI.WebControls.Button btnWrite;
protected string strSearchField;//이름, 제목, 내용
protected string strSearchQuery;//검색할 문자열
private void Page_Load(object sender, System.EventArgs e)
{
strSearchField = Request.QueryString["SearchField"];
strSearchQuery = Request.QueryString["SearchQuery"];
if(!Page.IsPostBack)
ReadData();
}
private void ReadData()//데이터 읽어서 데이터그리드에 출력하는 함수(메서드)
{
SqlConnection objCon = new SqlConnection();
objCon.ConnectionString = Application["CONNECTION_STRING"].ToString();
objCon.Open();
SqlCommand objCmd = new SqlCommand();
objCmd.Connection = objCon;
objCmd.CommandText = "procListReply";
objCmd.CommandType = CommandType.StoredProcedure;
SqlDataAdapter objDa = new SqlDataAdapter();
objDa.SelectCommand = objCmd;
DataSet objDs = new DataSet();
objDa.Fill(objDs, "Reply");
//검색
strSearchQuery = strSearchQuery.Replace("'", "''");
DataView objDv = new DataView();
objDv = objDs.Tables["Reply"].DefaultView;
objDv.RowFilter = strSearchField + " Like '%" + strSearchQuery + "%'";
DataGrid1.DataSource = objDv;
DataGrid1.DataBind();
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 이 호출은 ASP.NET Web Form 디자이너에 필요합니다.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 디자이너 지원에 필요한 메서드입니다.
/// 이 메서드의 내용을 코드 편집기로 수정하지 마십시오.
/// </summary>
private void InitializeComponent()
{
this.DataGrid1.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.DataGrid1_PageIndexChanged);
this.btnWrite.Click += new System.EventHandler(this.btnWrite_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
DataGrid1.CurrentPageIndex = e.NewPageIndex;
ReadData();
}
private void btnWrite_Click(object sender, System.EventArgs e)
{
Response.Redirect("./List.aspx");
}
}
}