MVC5 学习笔记2
写的比较散乱 主要记录一下自己的心得 备忘
这篇介绍如何将EF进行多表查询的结果返回到视图上去 用的是帮"留级"好友毕设的代码(大数据的时候 还是不要讲的太清楚 慌得要死)
Controller
这里除了用EF进行多表查询以外 用了分页 分页需要在NuGet中添加引用using PagedList;
1 public ActionResult Couriner(int? page) 2 { 3 using (DbEntities context = new DbEntities()) 4 { 5 //获取Context 6 var couriner = from c in context.T_Couriner 7 join area in context.T_Area 8 on c.Area_Id equals area.Id 9 select new V_Couriner 10 { 11 Couriner_Acc = c.Couriner_Acc, 12 Couriner_Pwd = c.Couriner_Pwd, 13 Couriner_Name = c.Couriner_Name, 14 Couriner_Area = area.Area_Name 15 }; 16 int pageSize = 10; 17 int pageNumber = (page ?? 1); 18 return View(couriner.ToPagedList(pageNumber, pageSize)); 19 } 20 }
Model
也许你会奇怪select new V_Couriner是什么 其实它是Model中自己写的一个类 下面贴出来V开头代表视图
1 public class V_Couriner 2 { 3 public string Couriner_Acc { get; set; } 4 public string Couriner_Pwd { get; set; } 5 public string Couriner_Name { get; set; } 6 public string Couriner_Area { get; set; } 7 } 8 }
View
视图就没什么好说的 主要注意的是引用:
@model PagedList.IPagedList<WebFruits.Models.V_Couriner>
@using PagedList.Mvc;
另外PagedList的样式 我引用在Layout中 因为这个重复使用率很高 好吧 因为我懒
1 <table class="table table-striped table-hover"> 2 <tr> 3 <th> 4 帐号 5 </th> 6 <th> 7 密码 8 </th> 9 <th> 10 姓名 11 </th> 12 <th> 13 所属区域 14 </th> 15 </tr> 16 17 @foreach (var item in Model) 18 { 19 <tr> 20 <td> 21 @Html.DisplayFor(modelItem => item.Couriner_Acc) 22 </td> 23 <td> 24 @Html.DisplayFor(modelItem => item.Couriner_Pwd) 25 </td> 26 <td> 27 @Html.DisplayFor(modelItem => item.Couriner_Name) 28 </td> 29 <td> 30 @Html.DisplayFor(modelItem => item.Couriner_Area) 31 </td> 32 </tr> 33 } 34 35 </table>
嗯 今天就到这 额凌晨2点了
转载请注明地址http://www.cnblogs.com/CoffeeEddy/p/5154480.html