留言簿
留言成功,请等待站长审核,谢谢支持!
2015-04-05 23:02 王(还有后续)
public partial class userControl_user_list : System.Web.UI.UserControl { DBClass dbc = new DBClass(); private int hd;//号段 private int zj;//中间段 public string sqlwhere = " where 1=1"; protected void Page_Load(object sender, EventArgs e) { string cmd = "select count(*) from my_haoma"; if (int.TryParse(Request.QueryString["w4"], out hd) && hd > 0)//w4为传递的参数号段值 与web.config 对应 { sqlwhere += " and my_hm like'" + hd + "%'"; } if (int.TryParse(Request.QueryString["w5"], out zj) && zj > 0)//判断中间数字 { sqlwhere += " and my_hm like'%" + zj + "%'"; } cmd = "select count(*) from my_haoma " + sqlwhere; AspNetPager1.RecordCount = (int)SqlHelper.ExecuteScalar(CommandType.Text, cmd); } protected void ImageButton1_Click(object sender, ImageClickEventArgs e) { Response.Redirect("list_" + txt_haoduan.Text + "_"+txt_zhongjian.Text+"_1.html"); }
2015-04-04 21:27 小鸡吃米糊
谢谢,谢谢杨老师,原来还有这么强大的工具。太方便了。VS的调试工具我找到了,直接有右键执行存储过程就行。杨老师,您说用pagedatasource可不可以实现数字分页效果,因为我不会写存储过程,所以我改用pagedatasource不知道您觉得可行不可行。今天看了您回复的留言,我准备再试试aspnetpager,有了正确的存储过程,我再试试看看
回复:您好,不太明白您说的数字分页效果是什么,如果指的是数字分页按钮,这和什么数据源是没有任何关系的,和用不用存储过程更没有关系。谢谢!
2015-04-04 08:14 小鸡吃迷糊
杨老师您好。我不会写存储过程,我是菜鸟,希望您闲暇时间能帮我看看 CREATE PROCEDURE Pr_ListShop @startIndex INT, @endIndex INT AS Begin select ROW_NUMBER()OVER(order by ShopID desc) as row from Rshop select ShopName,ShopTime from RShop where row between @startIndex and @endIndex END杨老师这是我写的,好像肯定是不对,因为查询出来的结果都串行了,我觉得肯定是格式语法不对。我要表达的意思就是先查询出来row然后再在下一句中使用row。RShop是我的表名row不是表中的字段,因为我看您的存储过程也是as row,所以我也as row了。其实我要写的完整语句是带条件的select ShopName,ShopTime,ShopInfo from RShop where AddressID=5,AddressID可能是固定值也可能是前台传过来的。老师,恳请您指导一下,万分感谢!感谢!
回复:您好,我也没法帮您验证,因为我没有这样的表结构而且我好几年前就开始用LINQ TO SQL和Entity Framework,基本上已经不写一句sql了,其实无论是本站还是AspNetPager的VS设计器,都有存储过程生成工具可以生成分页存储过程,AspNetPager的在线分页存储过程生成工具在这里:http://www.webdiyer.com/aspnetpager/spgenerator/,请用这个生成工具来生成。谢谢!
2015-04-02 19:16 Elena
aspnetPager控件的用法,实现分页,项目是用三层架构
回复:示例中就有,请参考示例。谢谢!
2015-04-02 10:21 过客
杨老师您好 您例子中AspNetPager745Demo\UrlSearch 是单条件ID查询的, 可否上传个多条件查询的例子。 单条件的已测试正常, 多条件的不懂拉, 可否上传,,谢谢----急
回复:您好,不太明白您哪里不懂?一个条件和多个条件一样,只需将查询字段加到表单中,表单提交时会自动将参数附加到url中,您只需要在后台用Request.Querystring方法获取相应的参数值进行查询即可。谢谢!
2015-04-01 15:27 过客
杨老师您好! 你的url查询结果再分页的我已测试通过,毕竟是单一条件的 如果是多条件的,应如何拼装呢,给个例子, (注:条件中不一定都是整型的情况又如何?) 谢谢,急需要。。。谢谢
回复:您好,不太明白您的意思,一个条件和十个条件有什么区别呢?查询条件都是通过url参数传递的,不知道您要拼装什么?谢谢!
2015-04-01 12:37 过客
public partial class userControl_user_list : System.Web.UI.UserControl { private int minId; protected void Page_Load(object sender, EventArgs e) { string cmd = "select count(*) from my_haoma"; if (int.TryParse(Request.QueryString["w4"], out minId) && minId > 0) { cmd = "select count(*) from my_haoma where my_hm like'" + minId + "%'"; } else AspNetPager1.RecordCount = (int)SqlHelper.ExecuteScalar(CommandType.Text, cmd); } protected void ImageButton1_Click(object sender, ImageClickEventArgs e) { Response.Redirect("list.html?w4=" + txt_haoduan.Text ); } protected void AspNetPager1_PageChanged(object sender, EventArgs e) { string cmd = "select * from my_haoma where my_hm like'" + minId + "%' "; if (minId > 0)//号段输入值 大于0时 { cmd = "select * from my_haoma where my_hm like'" + minId + "%' "; txt_haoduan.Text = minId.ToString(); } else // { cmd = "select * from my_haoma "; } SqlDataSource1.SelectCommand = cmd; DataView dv = (DataView)SqlDataSource1.Select(DataSourceSelectArguments.Empty); AspNetPager1.RecordCount = dv.Count; PagedDataSource pds = new PagedDataSource(); pds.DataSource = dv; pds.AllowPaging = true; pds.CurrentPageIndex = AspNetPager1.CurrentPageIndex - 1; pds.PageSize = AspNetPager1.PageSize; Repeater1.DataSource = pds; Repeater1.DataBind(); this.AspNetPager1.EnableUrlRewriting = true; this.AspNetPager1.UrlRewritePattern = "~/list_" + minId.ToString() + "_{0}.html"; } } 能正常显示查询结果,但是当点任何页码时,一直保持第1页数据??请帮修改下代码,谢谢。(跟您的例子一样的代码)
回复:您好,您需要用VS设置断点调试,看页索引参数及查询条件是否正确传递到了后台,从代码中无法直接看出什么地方的问题。谢谢!
2015-04-01 11:25 初学者
老师你好,求一个"Ajax局部加载"和“AjaxForm搜索”只用同一个VIEW实现的例子,谢谢! 我的邮箱是:724474528@qq.com
回复:已发送,请注意查收,另外请注意该例子似乎存在bug,请查看邮件中的说明并验证,建议使用partial view的形式进行查询。谢谢!
2015-04-01 11:00 小李
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { GetMenuClass(); } if (Request.Form["ajax"] != null) { string strString = "select * from class where CreateDate=" + Request.Form["data"] + " and ctId=" + Convert.ToInt32(Request.Form["Id"]); DbCommand cmd = dbs.GetSqlStringCommond(strString); DataTable tables = SM_Utils.MUtils.BindInfoAll(cmd, AspNetPager1); StringBuilder builder = new StringBuilder(); builder.Append("<ul>"); foreach (DataRow item in tables.Rows) { builder.Append("<li>"); builder.Append("<p><a href=\"ClassList.aspx?Id=" + item["cId"] + "\">" + item["cName"] + "</a></p>"); builder.Append("</li>"); } builder.Append("</ul>"); Response.Write(builder.ToString()); Response.End(); } } public void GetMenuClass() { try { int.TryParse(Request.QueryString["Id"], out parentId); string sql = "select CreateDate from class where ctId=" + parentId + " group by CreateDate order by CreateDate desc"; DataTable dt = SM_Database.DBHelper.Query1(sql); if (dt != null && dt.Rows.Count > 0) { sql = @"select c.cId,c.cName,m.Id,m.MenuName from class c inner join Menus m on c.ctId=m.Id where ctId=@parentId"; DbCommand cmd = dbs.GetSqlStringCommond(sql); dbs.AddInParameter(cmd, "@parentId", DbType.Int32, parentId); DataTable dts = SM_Utils.MUtils.BindInfoAll(cmd, AspNetPager1); TypeName = dts.Rows[0]["MenuName"] + ">"; StringBuilder builder = new StringBu
回复:您好,留言簿留言内容有长度限制,请尽可能简要描述您的问题。谢谢!
2015-03-31 12:10 DTdong
关于bootstrap在aspnetpager的应用,改了最后还是解决不了最外层是div,想把他变成ul,不知道哪里改
回复:您好,请看这个例子:http://www.webdiyer.com/aspnetpagerdemo/pagingbuttonlayouttype/default.aspx,设置PagingButtonLayoutType=PagingButtonLayoutType.UnorderedList就可以了。谢谢!