[ASP.NET MVC 5 - 04] 控制器与模型及视图的交互
2015-01-14 14:55
337 查看
控制器负责从模型中获取数据,然后传递给View进行展示,上一个章节我们讲到,使用EF之后,每一个实体类有一个DBContext类与之对应,这个类负责获取数据等工作,这时候,我们可以在Controller里面使用这个DBContext了,使用方式如下:
在这个类里面,我们有一个MovieDBContext的引用,这个引用负责去获取数据,转换成List。那么这个时候,我们就可以将这个Model传递给View了。View是可以接收List类型的Model的,这个已经十分清楚了。我们在之前的章节里面都有讨论。在View里面使用model的方式如下:
这种使用方式非常方便清晰,view只需要关心展现的方式,所有的东西都在Model里面。当然,实际情况下,可能还会有更新,删除等操作。控制器里面的方法可能如下:
如详细信息
其他的例如更新,删除都可以通过DBContext来实现,这里不再赘述。
public class MoviesController : Controller { private MovieDBContext db = new MovieDBContext(); // GET: /Movies/ public ActionResult Index() { return View(db.Movies.ToList()); } }
在这个类里面,我们有一个MovieDBContext的引用,这个引用负责去获取数据,转换成List。那么这个时候,我们就可以将这个Model传递给View了。View是可以接收List类型的Model的,这个已经十分清楚了。我们在之前的章节里面都有讨论。在View里面使用model的方式如下:
@model MvcMovie.Models.Movie @{ ViewBag.Title = "Details"; } @foreach (var item in Model) { <tr> <td> @Html.DisplayFor(modelItem => item.Title) </td> <td> @Html.DisplayFor(modelItem => item.ReleaseDate) </td> <td> @Html.DisplayFor(modelItem => item.Genre) </td> <td> @Html.DisplayFor(modelItem => item.Price) </td> <th> @Html.DisplayFor(modelItem => item.Rating) </th> </tr> }
这种使用方式非常方便清晰,view只需要关心展现的方式,所有的东西都在Model里面。当然,实际情况下,可能还会有更新,删除等操作。控制器里面的方法可能如下:
如详细信息
public ActionResult Details(int? id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } Movie movie = db.Movies.Find(id); if (movie == null) { return HttpNotFound(); } return View(movie); }
其他的例如更新,删除都可以通过DBContext来实现,这里不再赘述。
相关文章推荐
- ASP.NET MVC教程:理解模型、视图和控制器(4)
- ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库
- Asp.net MVC 理解模型,视图和控制器
- ASP.NET中实现模型-视图-控制器(MVC)模式
- ASP.NET MVC教程:理解模型、视图和控制器(3)
- Asp.Net MVC(理解模型、视图和控制器) - Part.2
- ASP.NET MVC教程:理解模型、视图和控制器(2)
- ASP.NET MVC教程:理解模型、视图和控制器(5)(完)
- ASP.NET MVC:理解模型、视图和控制器
- Asp.Net MVC(理解模型、视图和控制器) - Part.2
- Asp.Net MVC(理解模型、视图和控制器) - Part.2
- ASP.NET MVC教程:理解模型、视图和控制器(1)
- Asp.Net MVC中模型、视图和控制器简述
- Asp.Net MVC(理解模型、视图和控制器)
- Asp.Net MVC(理解模型、视图和控制器) - Part.2
- [翻译:ASP.NET MVC 教程]理解模型、视图和控制器
- ASP.NET MVC框架(第三部分): 把ViewData从控制器传到视图
- ASP.NET MVC框架(第三部分): 把ViewData从控制器传到视图
- [转自Scott]ASP.NET MVC框架(第三部分): 把ViewData从控制器传到视图
- ASP.NET MVC 音乐商店 - 3. 视图与模型