留言簿
留言成功,请等待站长审核,谢谢支持!
2014-06-09 19:33 ding
@html.AjaxPager这个有包含在mvcpager.dll中吗
回复:您好,这是1.0中的扩展方法,2.0以后变为Ajax.Pager扩展。谢谢!
2014-06-09 14:30 yaojunyi
事情真是不顺利 虽然我找到了.net mvc 1.0 的pager 但是我这项目是controller与view分离的项目 是两个不同的项目 我不知道是不是因为这个出的错 现在浏览器提示" 未能加载类型“System.Web.Mvc.ViewPage<PagedList<View_HomeUserInfo>>”。" 我监视代码确实返回了PagedList<View_HomeUserInfo>的对象 我不知道要怎么做了
回复:应该是命名空间问题,请将System.Web.Mvc.ViewPage>改为System.Web.Mvc.ViewPage>试试。谢谢!
2014-06-09 11:26 yaojunyi
谢谢杨涛老师,我已经找到了你在codePlex的MvcPager for asp.net mvc 1.0 http://mvcpager.codeplex.com/releases/view/42914 但是为什么在你这个网站找不到旧版本呢
回复:您好,旧版本本站不提供下载了,codePlex上的就可以使用。谢谢!
2014-06-09 11:20 yaojunyi
杨老师你好,我现在在维护MVC Preview项目 ,项目基于.net 3.5框架, MVC程序集的运行时版本为.net 2.0 请问能使用你的MVC Pager控件吗
回复:您好,MvcPager 2.0以后只支持ASP.NET MVC3.0以上,不支持ASP.NET MVC 2.0。谢谢!
2014-06-07 09:24 ddsoma
杨老师你好 关于处理把Html.RegisterMvcPagerScriptResource()放在结果页面导致多次请求,我是这样解决的: if (!$.fn.initMvcPagers) { $.getScript("/Scripts/test1.js"); } 在每次加载之前去判断下这段脚本是否已加载。这样就不会出现多次请求。你看怎么样?
回复:您好,这个方法我还没用过,这几天有空研究一下,非常感谢!
2014-05-30 13:55 游凯
杨哥,您好。 我在easyui的dialog(弹出div)中使用mvcpager时,点击页面无法以ajax方式提交,同样的设置在单独的页面中是可以的。请问是否是不支持div弹出框中使用mvcpager?如果可以,应该注意什么问题呢?
回复:您好,MvcPager暂不支持Ajax分页模式下通过Ajax进行加载,因为通过Ajax加载后无法绑定事件,这个问题比较棘手,还没有好的解决办法,谢谢!
2014-05-30 08:35 金霄
杨老师,我想追问的是,我的PageSide()过程所完成的任务,仅仅是先取数据库里的数据,如果没有数据,则不显示页面上的GridView控件,并弹出对话框,显示数据库没有内容。如果有数据的话,则对数据加工,并将加工后的数据放入一个DataTable里。上次发的一段代码(见下),就是在生成Datatable后的代码。前面是将加工后的数据放入了dtTable里。紧接着就是以下代码,这个代码应该是做分页用的。 x = dtTable.Rows.Count() AspNetPager1.RecordCount = x Dim startIndex As Integer = AspNetPager1.StartRecordIndex Dim row As DataRow While startIndex <= AspNetPager1.EndRecordIndex row = dtTable.Rows(startIndex - 1) startIndex += 1 Dim ll As Short Dim llstr As String dr = dt.NewRow() For ll = 0 To Chemnumber + 1 llstr = row(ll) dr(ll) = llstr Next dt.Rows.Add(dr) End While Me.AspNetPager1.PageSize = 10 GridView1.DataSource = dt GridView1.DataBind() dt.Clear() 而我点击页面上的AspnetPager控件的页码,就会调用下面AspNetPager1_PageChanged过程。这个过程仅调用了PageSite()自定义过程。 Protected Sub AspNetPager1_PageChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles AspNetPager1.PageChanged PageSite()//仅仅是先取数据库里的数据,如果没有数据,则不显示页面上的GridView控件,并弹出对话框,显示数据库没有内容。如果有数据的话,则对数据加工,并将加工后的数据放入一个DataTable里 End Select End Sub 您说“您用Url分页,那么请不要在Page_Load方法中绑定分页数据,而应该在PageChanged事件处理程序中绑定,否则会导致数据被绑定两次,因为PageChanged事件会在每次页面加载时执行。” 而我的PageLoad里,并没绑定分页数据呵:下面是我的Page_Load过程代码。 Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load If Session("logid") = "" Then Response.Redirect("Load.aspx") End If If chkTimeConstraint.Checked = False Then db.Disabled = True de.Disabled = True Else db.Disabled = False de.Disabled = False End If If Session("logid") = "" Then Response.Redirect("Load.aspx") Else lblTotalNum.Visible = False lblRecorder.Visible = False txtTotalNum.Visible = False End If End Sub 我是根据“自定义数据呈现逻辑”例子所做的呵。
回复:您好,不知道内容是否又超出了,我没看到您说的具体是什么问题,我已经有五六年不做WebForm了,一直用MVC+Entity Framework,所以您的DataRow那一段数据加工的代码,我不能确定是否正确,另外您用的是VB.Net,我只在十几年前做asp时学过一段时间的vbscript,学.net后一直用C#,所以看的比较吃力,如果您的问题是分页的数据不正确,那么需要设置断点调试一下,看在数据加工过程中各个参数及最终生成的dt中的数据是否正确。谢谢!
2014-05-29 13:52 金霄
不好意思,我上次的留言怎么不全啊,再发一次吧。 杨老师,我是我上次的提问: ( 杨老师,你好!我最近做一个程序,从数据库里将数据取出加工处理后放入一个DataTable里,然后 x = dtTable.Rows.Count() AspNetPager1.RecordCount = x Dim startIndex As Integer = AspNetPager1.StartRecordIndex Dim row As DataRow While startIndex <= AspNetPager1.EndRecordIndex row = dtTable.Rows(startIndex - 1) startIndex += 1 Dim ll As Short Dim llstr As String dr = dt.NewRow() For ll = 0 To Chemnumber + 1 llstr = row(ll) dr(ll) = llstr Next dt.Rows.Add(dr) End While Me.AspNetPager1.PageSize = 10 GridView1.DataSource = dt GridView1.DataBind() dt.Clear() Protected Sub AspNetPager1_PageChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles AspNetPager1.PageChanged PageSide() 这个是我的自定义函数 End Sub 但很奇怪,这个函数为什么在我点击页码进行翻页时,执行了这个函数后,等到PageSide()执行完毕后,又跳到这个AspNetPager1_PageChanged函数,又执行了一遍AspNetPager1_PageChanged函数,而这个函数里只有一个PageSide()过程。即AspNetPager1_PageChanged这个函数执行了两遍,为什么会这样。如何解决呢?谢谢!) 这是您上一次的回复: (回复:您好,很抱歉,我没看懂您的代码,您的PageSide函数和分页有什么关系吗?请注意:如果您用Url分页,那么请不要在Page_Load方法中绑定分页数据,而应该在PageChanged事件处理程序中绑定,否则会导致数据被绑定两次,因为PageChanged事件会在每次页面加载时执行。谢谢!) 杨老师,我想追问的是,我的PageSide()过程所完成的任务,仅仅是先取数据库里的数据,如果没有数据,则不显示页面上的GridView控件,并弹出对话框,显示数据库没有内容。如果有数据的话,则对数据加工,并将加工后的数据放入一个DataTable里。上次发的一段代码(见下),就是在生成Datatable后的代码。前面是将加工后的数据放入了dtTable里。紧接着就是以下代码,这个代码应该是做分页用的。 x = dtTable.Rows.Count() AspNetPager1.RecordCount = x Dim startIndex As Integer = AspNetPager1.StartRecordIndex Dim row As DataRow While startIndex <= AspNetPager1.EndRecordIndex row = dtTable.Rows(startIndex - 1) startIndex += 1 Dim ll As Short Dim llstr As String dr = dt.NewRow() For ll = 0 To Chemnumber + 1 llstr = row(ll) dr(ll) = llstr Next dt.Rows.Add(dr) End While Me.AspNetPager1.PageSize = 10 GridView1.DataSource = dt GridView1.DataBind() dt.Clear() 而我点击页面上的AspnetPager控件的页码,就会调用下面AspNetPager1_PageChanged过程。这个过程仅调用了PageSite()自定义过程。 Protected Sub AspNetPager1_PageChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handl
回复:您好,很抱歉,留言内容有长度限制,超出会被截掉,请尽可能精简您的问题描述,不要把以前的问题完全重发一遍,谢谢!
2014-05-29 12:04 小水滴儿
杨老师是有问必答!!真是感动啊!!! 我还是有个小问题,我使用的是 AjaxForm搜索(Post)模板,我的问题是——想在搜索页面默认不加载结果页面,这个应该怎么实现?? 我试了,如果把 Html.RegisterMvcPagerScriptResource();写到搜索页面,ajax请求就不生效了,翻页就会变成普通请求,如果放到结果页面,就会造成重复请求,不知道如何解决,谢谢!【上一次提问就是因为我把Html.RegisterMvcPagerScriptResource();写到了结果页面造成了页面重复请求】
回复:您好,您可以试试在页面初次加载时传递空的数据对象,也就是没有数据可分页,只有发送Ajax查询请求后才返回相应数据。谢谢!
2014-05-28 23:13 王羿
杨老师好。 我在使用您的mvc2 控件时想在一个页面里存在2个分页列表。改怎么做呢?您有相关例子吗?
回复:您好,示例中就有这样的例子,请看一下:MvcPager 分页示例 — 多个MvcPager,谢谢!