留言簿

我要留言
留言搜索

2020-02-02 12:56  dotnet控

杨老师:你好!
MvcCaptcha什么时候出dotnet core版本?
谢谢!
回复:您好,暂时没有这个计划,现在的类似组件很多,您可以在nuget库中搜一下。谢谢!

2020-01-30 12:49  qwe

老师 ajax分页有没有必要调用存储过程?

之前:
PagedList<T> m = o.T.Where().OrderBy().ToPagedList(page, pageSize);

现在:
PagedList<Memo_List> menu =存储过程(参数).ToPagedList(page, pageSize);

我在想:代码量增加了,有没有必要这样写?
回复:您好,调用不调用都可以,没有是否必要的说法,如果是sql server 2005以上的数据库,就没必要写存储过程,ToPagedList扩展方法就能实现在数据库端分页。谢谢!

2020-01-02 01:39  Yu

杨老师您好!
求一份MvcPager 2.0源码(yyf20150901@163.com)
非常感谢!
回复:抱歉,找不到了,2.0版没有上传到github,时间太久,换了笔记本,以前的备份找不到了,找到的都是3.0版的,不知道您要这么老的源代码干什么?谢谢!

2019-12-04 13:57  JackeyLove

杨老师您好,我在使用MVCPager3.0版本 Ajax多分页的时候遇到一个问题。在多分页时浏览器Url会显示每个分页的index,如下:
http://localhost:61814/#id=2&pageindex=3
但是当刷新数据的时候这个url没有清空,刷新数据之后再点击id=2的选项卡或者pageindex=3的选项卡的时候就会没反应,
请问在js里有清空mvcpager选项页码的接口么?或者怎么初始化设置才能避免这个问题呢?
谢谢。
回复:您好,这不是清空js的问题,这是MvcPager的Ajax模式下初始化数据功能,看这个例子。刷新之后如果参数还在,那么当前页就是参数对应的页面,在您的例子中当前页面就是3,所以无法点击,如果您需要返回第一页,则必须清除掉该参数。谢谢!

2019-12-03 11:07  SDF

老师您好:HtmlPager.cs出现警告。

F:\MvcSD\MvcPager\HtmlPager.cs(47,37,47,41): warning CS1573: 参数“html”在“Webdiyer.WebControls.Mvc.HtmlPager.HtmlPager(System.Web.Mvc.HtmlHelper, Webdiyer.WebControls.Mvc.IPagedList)”的 XML 注释中没有匹配的 param 标记(但其他参数有)

这个怎么解决,谢谢!
回复:您好,您是自己编译出现这个问题的吗?这个是源代码中的注释问题,和运行没有任何关系,可以不用理会。谢谢!

2019-12-02 15:37  JackeyLove

杨老师您好,我在使用mvc分页的时候发现一个问题。
我在布局页面引用了一个js文件,里面使用jQuery的符号$去定义了一个方法,第一次加载子页面时这个方法可以调用的,但是一旦点击页码(比如说点击第二页),整个子页面重新渲染之后,我自定义的js中的方法就失效了。
请问怎么在分页子页面支持布局页的js引用呢?
回复:您好,这个问题应该和用$符号定义方法没有关系,如果您的方法是绑定到DOM元素上的,分页的分页视图页面通过Ajax加载后,除非用jQuery的on方法,否则新页面中的DOM元素就不会被绑定,所以看起来象是您的方法失效了,您可以看一下MvcPager脚本插件源代码中页索引元素click事件的绑定方法,谢谢!

2019-11-14 15:28  投入巨额

老师您好,请问:
我的MVC项目在views里右键浏览器查看任何一个页面都能正常访问到预设控制器(/account/login),但重装系统后右键任意页面都会显示http://localhost:37632/account/login/Views/任意文件/任意页面.cshtml
路由似乎不起作用了,找不到原因,你能帮我分析下原因吗?
谢谢!
回复:您好,没有见过这样的问题,感觉您的VS没有安装相应的ASP.NET MVC开发组件,请您在VS的添加/删除组件中进行确认。谢谢!

2019-11-14 13:21  沈先生

杨老师 用了你的 MvcPager进行局部刷新分页,可是我在局部分页添加的a 标签 点了没有任何反应
主页面
@using (Ajax.BeginForm("Business", null, new AjaxOptions
{
    UpdateTargetId = "MVCpager",
    HttpMethod = "Get"
}, new Dictionary<string, object> {
    { "id", "searchForm" },{ "class","well well-sm"}
}))
{
    <div class="form-inline" style="text-align:center;">
        <span>企业名称:</span><input type="text" name="unitName" id="unitName" class="form-control" />
        <input type="submit" value="搜索(S)" accesskey="S" class="btn btn-default" />
    </div>
}

<div id="MVCpager">
    @Html.Partial("_JifenList", Model)
</div>
@{Html.RegisterMvcPagerScriptResource();}
局部页面 
<ul class="nav navbar-nav">
    @{foreach (var item in Model)
        {
            <li class="col-xs-4" style="text-align:center;">
                <a href="http://www.baidu.com"><img src="~/Images/projects/@item.ImgPath" style="width:95%" /></a>
                <h3>
                    @Html.ActionLink(item.UnitName, "Index", "Home")
                </h3>
                <p>@item.UnitMsg</p>
            </li>
        }}
</ul>
<div class="col-xs-12" style="margin-bottom:20px;">
    @Ajax.Pager(Model, new PagerOptions{
    PageIndexParameterName = "PageIndex",    
    CurrentPagerItemTemplate = "<span class=\"spanx\" >{0}</span>",
    NumericPagerItemTemplate = "<span class=\"spanx\" >{0}</span>",
    HorizontalAlign = "Center",
    FirstPageText = "<span class=\"spanx\" >首页</span>",
    LastPageText = "<span class=\"spanx\" >尾页</span>",
    NextPageText = "<span class=\"spanx\" >下一页</span>",
    PrevPageText = "<span class=\"spanx\" >上一页</span>"
}, new MvcAjaxOptions { UpdateTargetId = "MVCpager", DataFormId = "searchForm", HttpMethod = "Get" })
回复:您好,出现这样的问题很可能是两个原因:1、没有引入jQuery脚本库和MvcPager脚本插件,或者引用路径错误;2、页面上有其它脚本错误,导致Ajax请求失败;请用浏览器开发者工具调试检查。网站后台有点问题,最新留言没显示出来,今天才看见,回复迟了请原谅!谢谢!

2019-10-12 10:52  sam

交流一个小问题:
因为我的数据比较大。差不多有两千万条路径。如果用存储过程分页效果不是很好。打开差不多要3到4秒。我现在想是一次性把数据用list缓存到redis.在每次打开直接读取redis,用你这个分页控件分页展现。但是发布就算是用了缓存,用你控件进行分页。发现速度并没有快。和当时在数据库查询分页的速度差不多。不知你有没有想过这方法优化。看缓存分页怎么样能更快展现出来。
回复:您好,这是数据获取问题,和分页控件本身是没有直接关系的,我不知道您把数据缓存后是如何分页的,用的是哪个分页控件?无论是MvcPager还是AspNetPager,您都可以使用自己的数据获取逻辑,谢谢!

2019-10-11 17:33  陈

老师你好:
mvcpager这个分页方式中
var model = db.Articles.OrderByDescending(a => a.PubDate).ToPagedList(id, 5);

这个ToPagedList是不是取数据库的数据就是直接取出1-5条?
还是先要取出全部数据,再用这个取出1-5条数据
回复:您好,这取决于您的数据提供程序,如果您用EF和sql server,那么分页是在数据库端实现的,也就是只取出5条数据,谢谢!
;