视图的作用: 检查由路由器提交的模型对象, 将其内容转换为HTML格式.
指定视图的两种方式, 代码如下:
return View("NotIndex");
return View("~/Views/Example/Index.cshtml");
强类型视图:
一个简单的例子: 通过ViewBag属性把Album的10个实例添加到视图数据字典中, 然后再视图中迭代它们.
控制器中的方法:
public ActionResult List()
{
var albums = new List<Album>();
for (int i = ; i < ; i++)
{
albums.Add(new Album { Title = "Product " + i });
}
ViewBag.Albums = albums;
return View();
}
视图中迭代显示:
<ul>
@foreach (Album a in (ViewBag.Albums as IEnumerable<Album>)) {
<li>@a.Title</li>
}
</ul>
视图模型:
显示单个商品的详细信息.
例如, 需要一个购物车汇总页面, 用来显示商品列表, 购物车中商品的总金额以及显示给用户的消息. 创建类:
public class ShoppingCartViewModel
{
public IEnumerable<Product> Products { get; set; }
public decimal CartTotal { get; set; }
public string Message { get; set; }
}
使用如下的@model指令, 向这个模型中强制输入一个视图
@model MvcApplication1.Models.ShoppingCartViewModel