日期:2014-05-17  浏览次数:20442 次

搜索条件前台如何保持状态分页
//搜索条件方法
public static sys_Event Search(String E_U_LoginName, int E_Type, string E_M_PageCode, DateTime S_E_DateTime, DateTime E_E_DateTime, String orderClause, Int32 startRowIndex, Int32 maximumRows)
  {

我那么多搜索条件字段前台如何保持状态的呢
也就是说搜索完以后分页保持状态

------解决方案--------------------
是搜索框还有原来的值这个状态
还是分页保持状态?
------解决方案--------------------
其实我没理解你的意思,我想你如果点击搜索之后肯定跳转到搜索页面
搜索页面的分页当前page肯定为1,也就是肯定是第一页,而为什么要保持
保持哪页呢?

我到是觉得你的这个方法我看着就不爽
为什么?你要学会把这么多字段做个实体来存储,不要这么多参数传去传来
错了都不知道,你传一个实体多方便
------解决方案--------------------
你可以这样嘛,多方便
if (ddlCity.SelectedIndex > 0)
{
where += string.Format(" and CityName='{0}'", CityName);
}
if (ddlDistrict.SelectedIndex > 0)
{
where += string.Format(" and DistrictName='{0}'", DistrictName);
}
where += 参数值
. . .

------解决方案--------------------
不知道给sql处理一下呀,把所有危险字符处理一下

我知道你想用参数话是吧,但是如果什么方法都用参数化那多麻烦
------解决方案--------------------
不错哦
------解决方案--------------------
session 来存状态把!
------解决方案--------------------
不提倡把参数存进session中,原因太多了,他不是做这件事情的
如果多条件查询,这个我们没有必要考虑各个参数的状态,asp.net
已经帮我做这件事了,在post的时候控件会把值维持


我们在后面做的事情的是把参数进行处理,然后拼接

如有四个参数,那么我们把这四个参数sqlparamter的形式传入,

然后在数据库中调用存储过程,多参数,一般对数据量大的,写个存储过程


基本应该都这样做的