留言簿

我要留言
留言搜索

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就可以了。谢谢!
;