全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

asp.net MVC使用PagedList.MVC实现分页效果

在上一篇的EF之DB First中,存在以下的两个问题:

1. 添加/编辑页面显示的是属性名称,而非自定义的名称(如:姓名、专业...)

2. 添加/编辑时没有加入验证

3. 数据展示使用分页

@Html.LabelFor(model => model.Name, htmlAttributes: new { @class = "control-label col-md-2" }) 是显示属性Name的“标签”,如果没有指定Display特性,则直接显示属性名Name

通用数据库生成的实体模型文件与代码一般不直接修改(防止下次生成时覆盖),这里要使用验证与实体分离

添加一个验证类,代码如下 :

using System.ComponentModel.DataAnnotations;

namespace Zhong.Web.Models
{
 [MetadataType(typeof(T_StudentValidateInfo))]
 public partial class T_Student
 {
 }
 public class T_StudentValidateInfo
 {
  [Display(Name="姓名")]
  [Required(ErrorMessage ="姓名不能为空")]
  [StringLength(10,ErrorMessage ="姓名长度超出限制")]
  public string Name { get; set; }

  [Display(Name="学号")]
  [Required]
  [StringLength(20,MinimumLength =10,ErrorMessage ="长度为10-20")]
  public string StudentId { get; set; }
 }
}

此时前台访问并提交:

从上图可以发现Name变成了“姓名”,StudentsId变成了“学号”,点击Create按钮后,出现了验证提示信息。

分页的实时使用PagedList.MVC插件,可以nuget添加引用

StudentsController中增加一个List的控制器方法:

public ActionResult List(int page = 1)
{
 //var students = entities.T_Student.OrderBy(s => s.Id).Skip((page - 1) * 2).Take(2);
 var students = entities.T_Student.OrderBy(s => s.Id);
 return View(students.ToPagedList(page, 2));
}

视图代码如下:

@using PagedList.Mvc
@model PagedList.IPagedList<Zhong.Web.Models.T_Student>

@{
 ViewBag.Title = "List";
}

<h2>List</h2>

<p>
 @Html.ActionLink("Create New", "Create")
</p>
<table class="table">
 <tr>
  <th>
   姓名
  </th>
  <th>
   学号
  </th>
  <th>
   专业
  </th>
  <th></th>
 </tr>

@foreach (var item in Model) {
 <tr>
  <td>
   @Html.DisplayFor(modelItem => item.Name)
  </td>
  <td>
   @Html.DisplayFor(modelItem => item.StudentId)
  </td>
  <td>
   @Html.DisplayFor(modelItem => item.T_Major.Name)
  </td>
  <td>
   @Html.ActionLink("Edit", "Edit", new { id=item.Id }) |
   @Html.ActionLink("Details", "Details", new { id=item.Id }) |
   @Html.ActionLink("Delete", "Delete", new { id=item.Id })
  </td>
 </tr>
}

</table>
@Html.PagedListPager(Model,page => Url.Action("List",new { page}))

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# asp.net  # MVC  # PagedList.MVC  # 分页  # asp.net中用DataReader高效率分页  # Asp.net MVC 中利用jquery datatables 实现数据分页显示功能  # .NET中的repeater简介及分页效果  # Asp.Net MVC 分页、检索、排序整体实现代码  # asp.net分页控件使用详解【附实例下载】  # .NET集成DeveloperSharp实现高效分页与无主键分页  # 的是  # 变成了  # 提示信息  # 如果没有  # 自定义  # 而非  # 在上  # 要使  # 大家多多  # 为空  # 不直接  # 上图  # 出现了  # 长度为  # 下次  # ComponentModel  # System  # csharp  # align 


相关文章: 香港服务器网站推广:SEO优化与外贸独立站搭建策略  新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?  如何在IIS中新建站点并配置端口与物理路径?  免费网站制作appp,免费制作app哪个平台好?  七夕网站制作视频,七夕大促活动怎么报名?  制作电商网页,电商供应链怎么做?  如何在万网自助建站中设置域名及备案?  如何通过免费商城建站系统源码自定义网站主题与功能?  微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?  如何用西部建站助手快速创建专业网站?  php json中文编码为null的解决办法  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  内网网站制作软件,内网的网站如何发布到外网?  如何用5美元大硬盘VPS安全高效搭建个人网站?  如何通过WDCP绑定主域名及创建子域名站点?  如何在腾讯云服务器快速搭建个人网站?  南京做网站制作公司,南京哈发网络有限公司,公司怎么样,做网页美工DIV+CSS待遇怎么样?  C#怎么创建控制台应用 C# Console App项目创建方法  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化  建站之星会员如何解锁更多建站功能?  音乐网站服务器如何优化API响应速度?  哈尔滨网站建设策划,哈尔滨电工证查询网站?  大连网站设计制作招聘信息,大连投诉网站有哪些?  如何高效利用亚马逊云主机搭建企业网站?  网站制作的步骤包括,正确网址格式怎么写?  宝盒自助建站智能生成技巧:SEO优化与关键词设置指南  建站之星如何快速解决建站难题?  湖北网站制作公司有哪些,湖北清能集团官网?  c# 在ASP.NET Core中管理和取消后台任务  怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?  如何在IIS中新建站点并解决端口绑定冲突?  如何做网站制作流程,*游戏网站怎么搭建?  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  建站之星代理商如何保障技术支持与售后服务?  网站制作哪家好,cc、.co、.cm哪个域名更适合做网站?  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  天津个人网站制作公司,天津网约车驾驶员从业资格证官网?  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  php条件判断怎么写_ifelse和switchcase的使用区别【对比】  北京建设网站制作公司,北京古代建筑博物馆预约官网?  h5在线制作网站电脑版下载,h5网页制作软件?  建站之星伪静态规则如何设置?  建站之星在线版空间:自助建站+智能模板一键生成方案  如何通过虚拟机搭建网站?详细步骤解析  宠物网站制作html代码,有没有专门介绍宠物如何养的网站啊?  想学网站制作怎么学,建立一个网站要花费多少?  如何选择高效可靠的多用户建站源码资源?  如何选择适合PHP云建站的开源框架?  C++中引用和指针有什么区别?(代码说明) 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。