一、练习项目:
http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4
微软的MVC4 入门教程。
二、知识点:
1.项目类型:
新建的是一个Internet MVC 4项目,有自带的基本框架,包含默认模板和一个登录注册系统,不过只是空架子,没有数据和数据操作;
2.添加 Controller
在基础框架中,将Controller统一放在根目录的Controller文件夹下.
默认项目中有两个Controller:AccountController.cs和HomeController.cs,分别控制账户系统和主页系统
新添的Controller就和他们放在一起。HelloWorldController.cs:
public class HelloWorldController : Controller { // // GET: /HelloWorld/ public ActionResult Index() { //return "这是我的<b>默认</b> action"; return View(); } // // GET: /HelloWorld/Welcome/ public string Welcome(string name,int numTimes=1) { //return "这是Welcome Action 方法...."; return HttpUtility.HtmlEncode("Hello " + name + ",NumTimes is:" + numTimes); } }
一个Controller可以对应多个页面呈现,每个Controller中的方法都可以对应一个页面,访问URL路径如下
/[Controller]/[ActionName]/[Parameters]
再此遇到两种不同返回值的方法:
1)string:
直接返回字符串,这种方法对应的网页中只包含返回的字符串显示;
2)ActionResult:
这种返回值的action, return 一个View()方法,可以为此action添加View,在其中设置具体页面格式和内容。
3. 添加 View
直接在HelloWorldController的Index()方法中点击右键,添加视图,默认就会被命名为Index; 生成的index.cshtml会存放在/Views/HelloWorld中。
观察可知,每个Controller在/Views下都有一个同类名的文件夹,存放该Controller所控制的View。
【默认模板】:/Shared/_Layout.cshtml
新建视图时,如果没有做任何操作,会默认添加母版_Layout.cshtml,也可以选择其它布局页;
如果不想在这个View中使用任何模板,应该取消“使用布局或母版页”复选框。
【内容占位符】: @RenderBody()
在_Layout.cshtml中,@RenderBody()相当于是内容占位符,其它以此为模板的View中内容,会填充到@RenderBody()方法所做位置。
【模板和内容页传值】:@ViewBag
ViewBag类在_Layout.cshtml模板和View之间进行传递值,如:@ViewBag.Title
初学MS 的MVC 4,参照微软www.asp.net/mvc 中的入门项目,写个MVC 4的入门系列,以供复习和分享。
微软入门项目:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4
【目录】
1.[.NET MVC4 入门系列01]Helloworld MVC 4 第一个MVC4程序
2. [.NET MVC4 入门系列02]MVC Movie 为项目添加Model
3. [.NET MVC4 入门系列03]使用Controller访问Model中数据
4. [.NET MVC4 入门系列04]Controller和View间交互原理
5. .NET MVC4 入门系列05]添加自定义查询页Search
6. [.NET MVC4 入门系列06] 在Movie Model和表中添加新字段(Code First Migrations)