1:默认的控制器映射
该控制器映射,可以支撑常规的路径;默认约定是在匹配/Views/controllername/actionname.aspx的目录中查找一个aspx文件。
2:IController接口
所有的控制器最终都是继承自这个接口,一个最简单的控制器:
3:Controller基类
控制器可以有一个唯一的基类为Controller,一个简单的这样的控制器如下:
根据映射,在前台地址输入:http://localhost:52588/Default1/就可以显式Index返回类型的ToString()结果。如上文中,注释的第一段,返回的是abc,注释的第二段,返回的是2,而Student返回的就是MvcApplication5.Controllers.Student,如果要让Student返回非默认的,则需要重写ToString方法。
4:ActionResult
控制器最常用的是返回ActionResult,可以修改上面例子如下:
当然,虽然这个时候仍然没有对用的前台UI界面,但是MVC框架已经会将Default1纳入到母版页框架中,随意我们最终看见的不是一个单独的纯文本html页,而是下面的页面:
5:ViewData
注意,ViewData是一个ViewDataDictionary,我们可以像上面那样添加数据进去,如果这个时候我们在View下指定了对应的UI,则UI中就会获取到这些数据。
在默认的MAP下,假设我们的控制器名为HelloWorld3Controller,则需要创建HelloWorld3目录,并在其中创建一个Index.aspx页面。按照如下的编码,就可以得到控制器中的数据:
6:强类型视图
目前为止,我们看到的都是传递基本的类型去UI。如果要传递一个强类型,也是可以滴。如后台:
前台:
其中Model就是传递到前台的强类型对象,其类型被指定为了Student。
7:测个试
测试代码如下:
成功,收工。