public string RoomShow(int shen, int shi,int pageindex,int pagesize)
{
string sql = "where 1=1";
if(shen!=0)
{
sql += " and Rshen=" + shen;
}
if(shi!=0)
{
sql += " and Rshi=" + shi;
}
using (SqlConnection conn=new SqlConnection("Data Source=.;Initial Catalog=a1;Integrated Security=True"))
{
conn.Open();
SqlCommand cmd = conn.CreateCommand();
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "RoomProc";
cmd.Parameters.AddWithValue("@pageindex", pageindex);
cmd.Parameters.AddWithValue("@pagesize", pagesize);
cmd.Parameters.AddWithValue("@tiao", sql);
SqlParameter paraout = cmd.Parameters.Add("@count", SqlDbType.Int);
paraout.Direction = ParameterDirection.Output;
using (SqlDataAdapter ada=new SqlDataAdapter(cmd))
{
Pager page = new Pager();
DataTable dt = new DataTable();
ada.Fill(dt);
page.Count = (int)paraout.Value;
string json = JsonConvert.SerializeObject(dt);
page.list = JsonConvert.DeserializeObject<List<Room>>(json).ToList();
string str=JsonConvert.SerializeObject(page);
return str;
}
}
}
本文介绍了一个使用C#进行SQL参数化查询的方法,包括如何构建动态SQL语句和执行存储过程来实现数据分页。通过示例代码展示了如何根据传入的参数动态拼接SQL查询条件,并使用SqlParameter集合传递参数,避免SQL注入风险,同时实现了数据的高效分页显示。
182

被折叠的 条评论
为什么被折叠?



