一 :了解MVC

介绍

1、 ASP.NET WebForm和ASP.NET MVC是并行的关系。都是属于.NET框架下的子框架。

2、 MVC项目常用模板

  空模板 :   不包含MVC目录结构,需要自己添加。      

  基本模板 : 包含MVC基本目录结构和基础文件。  

       Internet模板  :包含示例应用程序的文件。

3、 目录结构解释

       /Controller:存放控制器文件

  /Views:存放视图文件。后缀.cshtml或.aspx

      /Models:存放数据模型文件

 /App_Start:包含多个静态配置类,执行初始化任务。(必须默认启动的修改)

    /Content:存放静态内容,如css,可下载的文件等。

话不多说,我们先来创建一个mvc项目

一 :了解MVC

创建完成之前

会有一个弹框

一 :了解MVC

由于我们是刚学,所以创建一个完整的mvc项目

视图引擎有两种  一种是razor 一种是ASPX  一般都是razor

一 :了解MVC

这就是完整的mvc项目

一 :了解MVC

默认是这个控制台

HomeController

默认视图是Index

 默认路由规则中

默认控制器是:Home

默认Action是:Index

可以自行修改/ App_Start/ RouteConfig.cs中的代码。

一 :了解MVC

这里有个小提示  默认url规则会吧后面的去掉,只要输入home就可以了

一 :了解MVC( 默认隐藏 ,可以自己输入)

一 :了解MVC(Controller可以省略)

传递数据

1、 ViewData

    数据字典类型,存放的是键/值对数据。

2、ViewBag

   存放的是dynamic动态类型数据。

 3、TempData

   存放临时数据,可以跨操作方法。

 4、注意事项

 ViewBag和ViewData仅针对当前Action中有效。

   Tempdata数据最多只能经过一次controller传递,并且每个元素最多只能访问一次,之后删除。

ViewData["name"] = "ViewData";

//viewBag
ViewBag.Message = "ViewBag";
//TempData
TempData["TempData"] = "TempData";

 

在控制台创建一个新的控制台,
创建一个视图方法Index


然后调用index
发现,ViewData,ViewBag.Message ,//TempData都可以显示值

我们在这个控制台基础上重新创建一个视图 aoubts方法

调用
发现 只能出现TempData
并且,当你刷新页面,TempData 也会消失


1  viewdata 和viewbag 不可跨页面显示 而 tempdata 可以  

2    tempdata  但是只能在一次http请求中有效果