Asp.Net Mvc 基礎(一)


我是一個MVC 新手 寫一篇小文章,願與大家分享,寫的到不到的 大家多擔待,多指點 .

 

   MVC 是一種架構模式,MVC全稱ModelViewController,(Model)模型(View)視圖(Controller)控制器

(Model)模型:用於封裝與應用程序業務邏輯相關的數據,以及對數據處理方法,Model對數據直接訪問,Model不依賴View和Controller。

(View)視圖:View主要是用來對頁面的顯示,基本上沒有程序上的邏輯。

(Controller)控制器:Controller主要起到不同頁面的組織作用,簡單理解成在Controller寫的方法return給View,View用ajax調用Controller的方法。

 

  首先我們新建一個MVC項目(如下圖)
 

 大家可以看到 有Model(模型),Controllers(控制機器),View(視圖)這3個文件夾 ,還有一個Global.asax文件

 首先我們看一下 Global.asax文件

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 using System.Web.Mvc;
 6 using System.Web.Routing;
 7 
 8 namespace MvcDemo
 9 {
10     // 注意: 有關啟用 IIS6 或 IIS7 經典模式的說明,
11     // 請訪問 http://go.microsoft.com/?LinkId=9394801
12 
13     public class MvcApplication : System.Web.HttpApplication
14     {
15         public static void RegisterRoutes(RouteCollection routes)
16         {
17             routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
18 
19             routes.MapRoute(
20                 "Default", // 路由名稱
21                 "{controller}/{action}/{id}", // 帶有參數的 URL
22                 new { controller = "Home", action = "Index", id = UrlParameter.Optional } // 參數默認值
23             );
24 
25         }
26 
27         protected void Application_Start()
28         {
29             AreaRegistration.RegisterAllAreas();
30 
31             RegisterRoutes(RouteTable.Routes);
32         }
33     }
34 }
View Code

MVC  遵守的是一種路由規則   執行的時候會先去Global.asax文件找這個規則,然后根據Controller和action找到你要執行的頁面,所以 執行的首頁會是Home/Index

Controllers文件:  

  提示: 因為本人新建的是一個MVC空項目,所以Controllers和view是不會自動生成文件的,需要自己添加新的視圖和控制器

 

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 using System.Web.Mvc;
 6 
 7 namespace MvcDemo.Controllers
 8 {
 9     public class HomesController : Controller
10     {
11         //
12         // GET: /Homes/
13 
14         public ActionResult Index()
15         {
16             return View();
17         }
18 
19     }
20 }
View Code

大家可以看到有一個Index的方法 方法執行return View();意思就是返回給頁面,

下面我寫一個簡單的小Demo

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Web;
 5 using System.Web.Mvc;
 6 
 7 namespace MvcDemo.Controllers
 8 {
 9     public class HomesController : Controller
10     {
11         //
12         // GET: /Homes/
13 
14         public ActionResult Index()
15         {
16             ViewData["Number"] = "你好Mvc";
17             return View();
18         }
19 
20     }
21 }
View Code

簡單來說Index和action都是action 在這里的意思就是將Index的方法下的"你好MVC"返回給頁面

下面我們看一下View是怎么呈現頁面的,頁面又如何顯示出 你好MVC

1 <body>
2     <div>
3     <%=Html.Encode(ViewData["Number"])%>
4     </div>
5 </body>
View Code

可以試試了。

注意事項:新建Controllers得時候一定要和View的文件夾名一樣

  添加Controllers時候如果給控制器改名字的話(如下圖)

只修改選中部分不要修改后綴Controllers,修改后的名字一定要和文件夾名字一樣(如下圖)

 

 
 
 
 
 也許這篇文章寫得不是很好,希望大家多指點。
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2024 CODEPRJ.COM