在上一篇的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小时内与您取得联系。