留言簿

我要留言
留言搜索

2012-05-15 00:34  菜鸟鸟

杨老师,请教个问题,我有个ASP.net MVC3程序,按照你的分页教程实现分页,能成功。但当我在分页的页面(JqAjaxList.cshtml)上有个添加记录的连接,点击后转到添加页面(CreateXueJiType.cshtml),添加记录后返回(RedirectToAction方法)到分页页面(JqAjaxList.cshtml)时,刚添加的记录不会显示出来,如果用标准Url分页不会出这个问题,用jQuery Ajax分页和Microsoft Ajax 分页都不会显示刚添加的记录。程序中没有用OutputCache缓存。我的程序中用了Ninject依赖注入
回复:您好,这个原因如果我没猜错的话,百分之百是缓存的问题,请在Controller中添加类似于如下的代码来清除缓存:
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetExpires(DateTime.Today.AddYears(-2)); 谢谢!。

2012-05-13 19:52  imtest

你好,请问示例中AspNetPager.xml为什么要和dll放在bin目录下?此文件可以删除吗?这个文件有什么作用?
回复:您好,那是开发时用于支持Visual Studio智能感知功能的,发布时可以删除。谢谢!

2012-05-12 23:33  tony

杨老师你好,如果我想用爬虫程序获得用dopostback方式分页的数据。应该如何做呢?post一些参数过去吗?希望老师可以帮我。谢谢:)

前面有人问过,可是他自己解决了,我还是不会。
回复:您好,需要将ViewState和相关的参数用post方法提交后才能获取数据,不太好实现,我也没做过,不知道您为什么有这样的需求,连搜索引擎也没有搜索这种页面的必要,因为访问者没办法直接打开页面来查看。

2012-05-08 16:27  菜鸟程序员

杨老师,遇到个这样的问题,以前公司程序员使用的分页控件aspnetpager.dll。但是是经过改善的。不能使用在存储过程上。用法比较简单。现在我下载的你的aspnetpager.dll。怎么样能共存两个DLL文件。是改名字还是怎么改。由于我现在需要使用存储过程。以前改善过的aspnetpager.dll满足不了我的用法。请问如何是好.急急急。
回复:您好,这个问题和dll名称关系不大,dll文件可以随便改名,但两个相同的命名空间及类名不能同时存在于两个dll文件中,如果以前改过的AspNetPager没有修改命名空间和类名,那就没办法用新的AspNetPager,这会导致冲突。谢谢!

2012-05-04 16:10  听话的乖孩子

认识杨老师才两天 给我的感觉是德高望重 发现了aspnetpager.dll很好 但是我不会用 请问提示这两个问题怎么解决呢 非常感谢
1未能在全局命名空间中找到类型或命名空间名称“Wuqi”(是否缺少程序集引用?)	
2 当前上下文中不存在名称"ds"“rpttandy”	
回复:您好,您需要先引入命名空间 Wuqi.Webdiyer,示例项目中是在web.config中引入的,页面中看不到,所以容易被忽略。谢谢!

2012-05-04 11:00  isaac

杨老师,您好,我在使用您的控件,您也帮我解答了好几次了,再次表示非常感谢,同时,您的精神也让我非常钦佩,祝您一切顺利、安康!
回复:谢谢支持!也祝您工作顺利!

2012-05-04 00:15  deng

杨老师,你好,使用您的分页控件,一般分页没问题,可是一限定条件,如某个新闻分类,就出问题了,这是我的代码,能帮我看看吗:
rotected void Page_Load(object sender, EventArgs e)
    {
  
            string caid = Request.QueryString["caid"];
            DataTable dt = new NewsManager().SelectByCaId(caid);
            if (dt.Rows.Count <= 0)
            {
                nameTd.InnerText = "该类别下目前暂时还没有任何新闻!";
            }
            else
            {
                nameTd.InnerText = "文章类型:" + dt.Rows[0]["name"].ToString();//获取数据表该类别第一行的类别名称,取单行数据
                int totalOrders = dt.Rows.Count;
                AspNetPager1.RecordCount = totalOrders;                          
        }     
    }
    void bindData()
    {

        NewsList.DataSource = SqlHelper.ExecuteReader(CommandType.StoredProcedure, ConfigurationManager.AppSettings["pagedSPName"],
        new SqlParameter("@startIndex", AspNetPager1.StartRecordIndex),
        new SqlParameter("@endIndex", AspNetPager1.EndRecordIndex));
        NewsList.DataBind();
    }
    protected void AspNetPager1_PageChanged(object src, EventArgs e)
    {
        bindData();
    }
回复:您好,不知道您说的出错具体是什么错误?您需要帖出详细错误信息我才可能帮到您。谢谢!

2012-05-03 21:48  夜星辰

在AspNetPager对Repeater进行分页那里没看到有P_GetOrderNumber啊,请解答
回复:您好,这是个存储过程,不在程序代码而在数据库中。谢谢!

2012-05-03 12:10  jason

UrlPaging="true"之后,为什么不管是不是Changed,每次都要执行 PageChanged?
aspx:
<webdiyer:AspNetPager ID="AspNetPager1" runat="server" 
            onpagechanged="AspNetPager1_PageChanged" AlwaysShow="true" UrlPaging="true">
        </webdiyer:AspNetPager>
CS:
if (!IsPostBack)
            {
bind();
}
        protected void AspNetPager1_PageChanged(object sender, EventArgs e)
        {
            bind();
        }
        private void bind()
        {

        }
现在的问题是UrlPaging="true"以后,每次页面加载都需要运行两次bind().也就是说,不管AspNetPager1是不是Changed,都运行了AspNetPager1_PageChanged(...). 这是什么原因呢?如何解决?
回复:您好,请您注意看一下帮助文档中的说明,Url分页模式下,每次页面加载都会引用分页事件,所以不需要在Page_Load中绑定数据,只需要在分页事件处理程序中绑定就行了。谢谢!

2012-05-02 18:18  南宫情

嗯,我想问下,我知道现在很多权威的资料的是英文的,因此呢,我想和您一样学好英文,从此可以看得懂那些资料,但是很迷茫,不知道怎么学习,从那开始,请问您是怎么学的呢,可以给我些知道么,或者什么学习资料的,一些流程!
,如果方便的话加QQ:718112196,谢谢了!
回复:您好,这个没有什么流程之类的东西,就是坚持看下去,一开始经常要翻英文词典,可能会很烦,但时间长了看的多了就基本上都能看懂了,我已经坚持十年了,现在看编程相关的技术文章和一般的英语新闻什么的基本上很少再翻词典。至于具体哪些资料那也不确定,我一般有什么问题就用google搜索,固定常看的博客主要有scottgu和scott hanselman以及phil haack等,在google英文搜索条件下,这几个关键词的第一个搜索结果就是他们的博客,希望能帮到您。谢谢!
;