ASP.NET MVC 超简单 分页

C#

       public ActionResult BiaoDan(int? page)
        {
            int pageindex = 1;
            if (page > 0)
            {
                pageindex = (int)page;
            }
            var pagesize = 6;
            pageindex = pageindex - 1;
            var db = new ddrDBEntities();
            var rowcount = db.BiaoDan.Count();
            if (rowcount < 1)
            {
                return Content("暂时没有客户的留言信息<br /><a href='/admin/admin'>返回</a>");
            }
            if (page < 1)
            {
                return Redirect("/admin/biaodan/?page=1");
            }
            var pagecount = rowcount / pagesize;
            if(rowcount % pagesize >0)
            {
                pagecount +=1;
            }
            if (pageindex+1 > pagecount)
            {
                return Redirect( string.Format("/admin/biaodan/?page={0}",pagecount));
            }
            var objs = db.BiaoDan
                .OrderByDescending(m=>m.ShiJian)
                .Skip<BiaoDan>(pageindex*pagesize)
                .Take(pagesize)
                .ToList();
            db.Dispose();
            return View(objs);
        }
        public JsonResult DelBiaoDan()
        {
            var objid = Guid.Parse(Request["delid"]);
            using (var db = new ddrDBEntities())
            {
                var obj = db.BiaoDan.Where(m => m.Id == objid).FirstOrDefault();
                db.BiaoDan.DeleteObject(obj);
                db.SaveChanges();
            }
            var result = new JsonResult();
            result.JsonRequestBehavior = JsonRequestBehavior.AllowGet;
            result.Data = new { flag = true };
            return result;
        }
    }

CSHTML

@model IEnumerable<ddr.Models.BiaoDan>
@{
    ViewBag.Title = "德迪尔电器有限公司-后台管理-客户留言信息";
    Layout = "~/Views/Shared/_AdminLayout.cshtml";
    int Page;
    try
    {
        Page = Convert.ToInt32(Request["page"]);
    }
    catch
    {
        Page = 1;
    }
}
<script>
    function del(id) {
        $.getJSON("/admin/delbiaodan/?delid=" + id, function (data) {
            if (data["flag"] == true) {
                alert("删除成功");
                window.location.href = window.location.href;
            }
        })
    }
</script>
<hr style="width: 400px; margin-right: auto; margin-left: auto;" />
@foreach (var obj in Model)
{

    <div style="width: 400px; margin-right: auto; margin-left: auto; text-align: left;">
        <font color="red">时间:</font>@obj.ShiJian
        <br />
        <font color="red">内容:</font>@Html.Raw(obj.NeiRong)
        <br />
        <a href="javascript:del('@obj.Id');" style="color:Red">删除此信息</a>
        <hr />
    </div>
}
<a href="/admin/biaodan/?page=@(Page - 1)" style="color:Red">上一页</a> <a href="/admin/biaodan/?page=@(Page + 1)" style="color:Red">
    下一页</a> <a href="/admin/biaodan/" style="color: Red">首页</a> <a href="/admin/biaodan/?page=@int.MaxValue" style="color:Red">
        末页</a>
时间: 2024-09-27 04:55:29

ASP.NET MVC 超简单 分页的相关文章

asp.net mvc实现简单的实时消息推送_实用技巧

因为项目需要,需要在网页上实现消息的推送.在百度上搜索了一下,发现实现网页上的消息推送,可以使用asp.net 中的SignalR类库,当然也可以使用H5的WebSocket  Ajax的轮回.当然此处我们使用asp.net 中的SignalR类库.因为它可以实现网页上消息的实时推送.什么是实时推送呢,我简单的说一下我个人的理解吧.实时:在同一时间类发生的事情,当然在计算机中并不是绝对的实时,因为CPU在同一时间片只能处理一个任务,那么这个时候疑问又来了? 我们平时使用电脑又上网,又听音乐是如何

asp.net mvc signalr简单聊天室制作过程分析_实用技巧

signalr的神奇.实用很早就知道,但一直都没有亲自去试用,仅停留在文章,看了几篇简单的介绍文字,感觉还是很简单易用的. 由于最后有个项目需要使用到它,所以就决定写个小程序测试一下,实践出真知:别人写的文章,由于环境(版本等)不同,还是或多或少存在一些出入的. 环境:vs2013 / asp.net mvc 5 / signalr 2.2.1 / jquery 1.10.2 先上两个效果图: 系统会自动给加入聊天室的人员分配一个ID,是该人员的唯一标识(绿色为当前用户说的话,橙色为当前用户之外

ASP.NET MVC实现查询+分页

在asp.net中我们知道有viewstate这样的页面级容器为我们保存表单数据,这样我们每次提交时数据都不会丢失,很容易的完成查询+分页的实现.找过相关MVC分页的例子,都是扩展HtmlHelper方法来实现.我想大家在ASP.NET开发中都用过 wuqi的AspNetPager分页控件以及dacey的NSunPage用来开发Winform项目的分页控件非常方便的满足了大家的分页需求.那么我们来看下在MVC中的查询+分页是怎么实现的.(这里我用到了wuqi的mvcpager) 下面例子是asp

请教一个关于asp.net mvc的简单问题

问题描述 <divid="box_title">@Html.ActionLink("我也要写","inputUm","Home",new{openid=@ViewData["openid"]},null)</div>这个能生成一个链接,但我在页面上点击<ahref="/Home/support?openid=%E6%98%AF%E4%BB%8Eorders%E6%9D

asp.net MVC实现简单的上传功能_实用技巧

方法一: Home/Index.aspx中的代码 复制代码 代码如下: <% using (Html.BeginForm("up","Home",FormMethod.Post,new{enctype="multipart/form-data"})) {%> <input type="file" name="upfile" /> <input type ="submi

详解ASP.NET MVC数据分页

ASP.NET MVC框架已经进入2.0时代,本文将从ASP.NET MVC数据分页谈起,希望能对大家有所帮助. 在网页上进行表格资料或其他显示资料的分页是一种十分常见的需求,以前我们有 GridView 或 DataPager 可以帮我们自动分页,虽然到了 ASP.NET MVC 一切全部重头来过,但我们也不用真的那麽辛苦的自己实做分页,因为早就有人帮我们写好程式并开放原始码分享给这个世界了. 如果你已经体会到在 ASP.NET MVC 中妥善利用强型别(Strong Typed)特性进行开发

一起谈.NET技术,详解ASP.NET MVC数据分页

ASP.NET MVC框架已经进入2.0时代,本文将从ASP.NET MVC数据分页谈起,希望能对大家有所帮助. 在网页上进行表格资料或其他显示资料的分页是一种十分常见的需求,以前我们有 GridView 或 DataPager 可以帮我们自动分页,虽然到了 ASP.NET MVC 一切全部重头来过,但我们也不用真的那麽辛苦的自己实做分页,因为早就有人帮我们写好程式并开放原始码分享给这个世界了. 如果你已经体会到在 ASP.NET MVC 中妥善利用强型别(Strong Typed)特性进行开发

艾伟_转载:ASP.NET MVC分页的实现

在ASP.NET中,GridView控件本身就带有分页的功能,只要把当前页面的索引值赋给GridView的PageIndex就可以实现了分页,至于数据怎么分页,全都由GridView封装起来了. 在ASP.NET MVC中分页的实现就只能靠自己来设计了.首先来说一下分页的原理.现在有一个张news表,中间有很多信息,我们假设一页显示5条记录,这样,页面数量=总记录数/5:这里,如果出现小数,得进位取整.如比总记录和数为51,那么分的页面数量是11,最后一页只有一条记录.好,有这样一个思路后,现在

asp.net-ASP.NET MVC怎么使用分页存储过程

问题描述 ASP.NET MVC怎么使用分页存储过程 ASP.NET MVC+EF数据库,Controller中使用pageindex参数怎么实现调用数据库的分页存储过程? 解决方案 http://kb.cnblogs.com/page/59560/