留言簿

我要留言
留言搜索

2014-03-18 12:31  J

@Html.Pager(Model, new Webdiyer.WebControls.Mvc.PagerOptions { PageIndexParameterName = "id", ShowPageIndexBox = true, PageIndexBoxType = Webdiyer.WebControls.Mvc.PageIndexBoxType.TextBox })

提示没有Pager方法 请问是缺少了什么吗?  谢谢
回复:您好,您需要引入Webdiyer.WebControls.Mvc命名空间,@using Webdiyer.WebControls.Mvc。示例中是在View目录下的web.config中全局引入的,请注意一下。谢谢!

2014-03-18 12:29  J

杨老师 您好 请问一下你这个MVC分页控件在MVC5.0下可以运行吗?
回复:您好,可以,本站就是ASP.NET MVC 5.1开发的。

2014-03-17 18:37  joylee

杨老师,请问我想在MVC中用EF+Linq来分页,一次读10条数据,而不是全部读取在分页,应该仿照MvcPagerDemoNet4.0中的哪一部分来做?
回复:您好,现在的官方示例中就是这样,EF会生成在数据库端分页的sql语句。谢谢!

2014-03-17 18:24  joylee

杨老师,您的这个MvcPager,只适用于数据全部查询出来,然后才分页吗?那样不是会很慢吗?
回复:您好,这和MvcPager无关,怎么获取数据完全由您自己决定,您可以取出全部数据再分页,也可以直接在数据库端实现分页。谢谢!

2014-03-16 23:28  rxb

杨老师,您好,我mvc3的项目在使用你的mvcpager2.0在实现分页时,想在点击下一页的时候使用自定义的路由,而非默认路由。具体的配置如下:
Global.cs的路由配置
public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapRoute(
                "default", // 路由名称
                "User/{controller}/{action}/{id}", // 带有参数的 URL
                new { controller = "Home", action = "Index", id = UrlParameter.Optional }, // 参数默认值
                new string[] { "MyHotel.Areas.User.Controllers" } //命名空间
            );
            routes.MapRoute(
                "DetailPager",
                "User/{controller}/{action}/{id}",
                new { controller = "Schedule", action = "SearchHotelDetails", id = 1 },
                new { action = "SearchHotelDetails" }
            );

        }

然后分页的分部视图如下配置:

@Ajax.Pager(
       Model,
       "DetailPager",
       null,
       new PagerOptions 
       { 
           PageIndexParameterName = "id", 
           ShowPageIndexBox = true, 
           PageIndexBoxType = PageIndexBoxType.DropDownList, 
           ShowGoButton = false, 
           HorizontalAlign = "right", 
           AlwaysShowFirstLastPageNumber = true,
           FirstPageRouteName = "DetailPager" 
       },
       new MvcAjaxOptions 
       { 
           UpdateTargetId = "hotels",
           //EnablePartialLoading = true,
           DataFormId = "searchHotel",
           HttpMethod = "Post"
       },
       new{style="float:right"}
       )

为什么当点击下一页后还是走的默认的路由Index方法啊?
回复:您好,您需要了解一下路由的优先匹配规则,在您的例子中,MvcPager生成的分页链接没有问题(即出站链接),问题在于分页链接被点击后(进站链接),会和第一个路由先匹配,因此定义的第二个路由DetailPager没有任何作用,您需要调整路由的先后顺序,或者通过定义路由约束来进行限定,以使进站的url与DetailPager匹配而不是与default路由匹配。谢谢!

2014-03-16 13:14  kevin

你好,我想请教一下,我想把"上一页"改成"<","下一页"改成">",请问可以改吗?如何改?
回复:您好,当然可以,不知道您说的是哪个控件?如果是AspNetPager,用FirstPageText,NextPageText等属性,如果是MvcPager,用PagerOptions的FirstPageText、NextPageText等属性,请参考示例及帮助。谢谢!

2014-03-15 18:18  rxb

杨老师您好,我用您的mvcpager2.0的AjaxHtmlPost搜索分页时,如果我在A页面填写表单后提交,经过controller查询后跳转到B页面,这时B页面显示的内容是分页了。但是在下一页的时候就会因为没有搜索条件而报错。请问下杨老师这个怎么解决啊?
回复:您好,这个问题其实和MvcPager无关,是怎么保存查询条件的问题,一般有两种方法,第一是在A页面用get方法提交,将查询条件通过url传递,另一种方法就是在B页面用Session等保存查询条件,分页时重新获取条件实现查询。谢谢!

2014-03-14 17:35  路过

<script>alert(1)</script>

2014-03-14 15:43  joylee

杨老师,MvcPagerDemoNet4.5直接下载了,不能运行,报很多错误,我初学软件开发,请问怎么解决?好像是少了dll文件
回复:您好,所有需要的dll文件都包含在示例项目的bin目录下,甚至包括ASP.NET MVC的相关程序集,不知道您出什么错?如果运行带数据库的示例,您需要安装SQL Server localdb,否则只可以运行不使用数据库的示例。谢谢!

2014-03-14 15:33  JoyLee

杨老师,请问Webdiyer.WebControls.Mvc的最新dll在哪里下载啊?没找到
回复:您好,用 nuget或者本站的下载页面都可以下载。谢谢!
;