学习ASP.NET MVC(四) View/Model 全解2011-10-14 博客园 ziqiu.zhang一.摘要本文讲解在Action中向View传递Model的几种方式.以及View获取Model以后如何编写显示逻辑.还详细 的介绍了ASP.NET MVC框架提供的Html Helper类的使用及如何为Html Helper类添加自定义扩展方法.二.承上启下上一篇文章中我们学习了Controller处理一次请求的全过程.在Controller的Action中, 会传递数据给 View,还会通知View对象开始显示.所以Model是在Action中获取的, 并由Action传递给View. View对象接 到Action通知后会使用自己的显示逻辑展示页面.

下面首先让我们学习如何将Model传递给View对象.三.传递数据给View在MVC中,Model对象是指包含了数据的模型. Controller将Model传递给View以后, View对象中不应该 做任何的业务逻辑处理, 仅仅根据Model对象做一些显示逻辑的处理.传递Model对象时, 我们有两种选择:1.传递一个弱类型的集合, 即成员为object类型的集合,  在View中需要将每个成员转换成我们需要 的类型,比如int, string,自定义类型等.2.传递强类型对象, 这些类型是我们自定义的. 在View中直接使用我们传递的强类型对象, 不需要再 转换类型.如果让我们自己设计一个MVC框架, 我们也会想到上面两种实现方式,接下来看看在ASP.NET MVC中的实 现.1.传递弱类型的集合(1) 如何传递ASP.NET MVC框架定义了ViewContext类, 直译后是"View上下文", 其中保存和View有关的所有数据, 其中Model对象也封装在了此类型中.ViewContext对象包含三个属性:IView ViewViewDataDictionary ViewDataTempDataDictionary TempData