最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ASP.NET?MVC框架簡介

 更新時間:2022年02月26日 08:38:25   作者:.NET開發(fā)菜鳥  
這篇文章介紹了ASP.NET?MVC框架,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

一、MVC模式

概述

1、MVC是一種流行的Web應(yīng)用架構(gòu)技術(shù),他把Web應(yīng)用劃分成Model(模型)、Controller(控制器)和View(視圖)三部分。

2、優(yōu)點(diǎn):可測試、可維護(hù)

3、MVC是ASP.NET技術(shù)的子級(ASP.NET MVC),ASP.NET包括:ASP.NET WebForm和ASP.NET MVC。

二、MVC簡介

1、MVC是什么

MVC是一種軟件架構(gòu)設(shè)計(jì)模式,針對具備人機(jī)交互功能的軟件和程序。

2、執(zhí)行順序

控制器接收網(wǎng)頁發(fā)送的請求,如果需要請求數(shù)據(jù),先從Model里面取出數(shù)據(jù),然后再交給View展示。

3、Web開發(fā)的本質(zhì)

Web開發(fā)的本質(zhì)流程:請求->處理->響應(yīng),WebForm方式不貼近web開發(fā)的本質(zhì)。

三、創(chuàng)建ASP.NET MVC步驟

1、創(chuàng)建ASP.NET MVC項(xiàng)目。

文件->新建->項(xiàng)目->Web項(xiàng)目,根據(jù)需要選擇相應(yīng)版本的ASP.NET MVC應(yīng)用程序,點(diǎn)擊“確定”:

2、在項(xiàng)目模板選擇界面,選擇相應(yīng)的模板和視圖引擎,點(diǎn)擊確定,新建一個ASP.NET MVC應(yīng)用程序:

3、創(chuàng)建Controller控制器。

本示例以VS2012為開發(fā)工具,創(chuàng)建的MVC4應(yīng)用程序,需要創(chuàng)建控制器才可以運(yùn)行(VS2013或以上版本已經(jīng)默認(rèn)創(chuàng)建了控制器,直接就可以運(yùn)行)。

在Controllers文件夾上面點(diǎn)擊右鍵->添加->控制器:

輸入控制器的名稱(控制器的名稱約定以Controller結(jié)尾),選擇模板,點(diǎn)擊添加:

4、創(chuàng)建視圖。

在控制器代碼界面,在方法名稱上面點(diǎn)擊右鍵:選擇“添加視圖”:

在添加視圖選項(xiàng)卡界面,輸入視圖名稱,視圖名稱必須和方法的名稱保持一致,選擇視圖引擎,點(diǎn)添加:

在Views文件夾里面會看到新添加的視圖:

四、ASP.NET MVC項(xiàng)目結(jié)構(gòu)

新創(chuàng)建的MVC應(yīng)用程序結(jié)構(gòu)如圖所示:

1、Content文件夾

存放資源文件,例如Css文件、第三方插件等。

2、Controllers文件夾

存放MVC應(yīng)用程序相關(guān)的控制器文件。

3、Models文件夾

存放除了Controller和View以外的文件。

注意:與三層結(jié)構(gòu)的Models不同,MVC里的Models里面可以放實(shí)體類、數(shù)據(jù)訪問類和業(yè)務(wù)類等。

4、Scripts文件夾

存放各種腳本文件。

5、Views文件夾

存放View文件。

6、Shared文件夾

Shared文件夾位于Views文件夾里面,任何控制器中找不到的視圖都會去Shared文件夾下面找。

7、Web.Config

存放配置信息。

8、Global.asax

Global.asax存放應(yīng)用程序啟動時要執(zhí)行的代碼。

五、代碼詳解

1、Global.asax—應(yīng)用程序啟動注冊路由

當(dāng)對網(wǎng)站發(fā)出請求時,應(yīng)用程序是如何把請求引到對應(yīng)的控制器及里面的Action方法
答:首先網(wǎng)站一啟動,會提前加載根據(jù)控制器和Action方法設(shè)置的路由規(guī)則,這樣一請求,路由就會分析之后把請求引到對應(yīng)的控制器和Action方法。

RouteConfig類位于App_Start文件夾下面。

2、控制器

  • 1)根據(jù)前面的解析,每次請求都是先定位控制器,然后再根據(jù)路由規(guī)則找到對應(yīng)的Action方法!
  • 2)但是在路由表里,我們只寫了Home,但是MVC框架約定,控制器都是以Controller結(jié)尾,并繼承了基類Controller!
  • 3)在這里Index方法返回值類型是ActionResult,方法名和路由注冊的方法名一致,在Index方法內(nèi),調(diào)用了View方法并且返回,這是一個重載的方法,可以給個參數(shù),作為返回視圖的名稱,如果沒有參數(shù),默認(rèn)就是以當(dāng)前Action命名的視圖。
  • 4)也就是Asp.netMVC架構(gòu),不像Java的MVC通過配置來建立關(guān)系,他是約定大于配置。

3、視圖

視圖里的代碼類似于之前的ASPX里面的代碼,主要是HTML、JS和CSS等前端技術(shù)構(gòu)成,從MVC1.0到MVC5.0變化很大,Razor語法越來越完善,強(qiáng)大!

4、向視圖傳遞數(shù)據(jù)

1)傳統(tǒng)的WebForm方式,前置頁面類和后置代碼類是繼承的關(guān)系,可以直接進(jìn)行數(shù)據(jù)傳遞。
2)MVC模式下,視圖和控制器是完全分離的,通過專用渠道傳遞數(shù)據(jù),ViewData是在控制器和視圖之間傳遞數(shù)據(jù)的容器之一。

5、ASP.NET MVC執(zhí)行順序

六、Model和三層架構(gòu)

1、MVC與三層架構(gòu)之間有沒有區(qū)別?

  • 1)MVC和三層架構(gòu)沒有必然的關(guān)系,架構(gòu)的思想是不一樣的。
  • 2)三層架構(gòu)強(qiáng)調(diào)的是物理分離(多個項(xiàng)目構(gòu)成),MVC強(qiáng)調(diào)的是邏輯分離(一個項(xiàng)目構(gòu)成)。
  • 3)MVC中也可以體現(xiàn)三層架構(gòu)。

  • 4)有些MVC企業(yè)框架為了方便管理,會故意把Models做分層設(shè)計(jì)。

注意:在MVC中如果它不屬于View也不屬于Controller,那么就把它歸到Model中。

七、MVC和ASP.NET

1、ASP.NET MVC和ASP.NET

  • (1)ASP.NET MVC是ASP.NET技術(shù)的子集。
  • (2)ASP.NET MVC是在核心ASP.NET基礎(chǔ)之上構(gòu)建
    • 1.依賴于HttpHandler,如請求是如何進(jìn)入控制器的
    • 2.依賴于Session、Cookie、Cache、Applaction等狀態(tài)保持機(jī)制
    • 3.使用HttpContext、Request、Response、Server等對象
    • 4.在Controller使用智能感知很容易得到這些對象
  • (3)ASP.NET MVC是.NET中編寫WEB程序的一種可選方式
    WebForms技術(shù)是另外一種可選方式

2、MVC和WebForms

(1)WebForms的特色

  • 1)所見即所得,開發(fā)傻瓜化
    • 1.服務(wù)器端控件
    • 2.事件模型
    • 3.狀態(tài)管理
  • 2)借鑒Winforms的成功特色
  • 3)偏離了Web請求處理的原理

(2)Asp.net MVC的特色

  • 1)關(guān)注分離
    • 1.WebForm只是把一個頁面分成了前置頁面和后置代碼,不夠徹底
    • 2.MVC可以把一個頁分成三塊,分得更徹底
  • 2)可測試性
  • 3)開發(fā)更接近WEB的本質(zhì)
  • 4)對開發(fā)人員的技術(shù)水平要求更高

到此這篇關(guān)于ASP.NET MVC框架的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • ASP.NET Core中的Razor頁面使用視圖組件

    ASP.NET Core中的Razor頁面使用視圖組件

    這篇文章介紹了ASP.NET Core中的Razor頁面使用視圖組件的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-02-02
  • ASP.NET緩存介紹

    ASP.NET緩存介紹

    緩存是在內(nèi)存存儲數(shù)據(jù)的一項(xiàng)技術(shù),也是ASP.NET中提供的重要特性之一。例如你可以在復(fù)雜查詢的時候緩存數(shù)據(jù),這樣后來的請求就不需要從數(shù)據(jù)庫中取數(shù)據(jù),而是直接從緩存中獲取。通過使用緩存可以提高應(yīng)用程序的性能
    2012-04-04
  • .Net行為型設(shè)計(jì)模式之備忘錄模式(Memento)

    .Net行為型設(shè)計(jì)模式之備忘錄模式(Memento)

    這篇文章介紹了.Net行為型設(shè)計(jì)模式之備忘錄模式(Memento),文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • Linux?CentOS下docker部署Asp.Net?Core(.Net6)

    Linux?CentOS下docker部署Asp.Net?Core(.Net6)

    這篇文章介紹了Linux?CentOS下docker部署Asp.Net?Core(.Net6)的方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12
  • asp.net 專業(yè)源代碼打包工具

    asp.net 專業(yè)源代碼打包工具

    我想很多人都在網(wǎng)上下載過一些示例代碼,或者收到一些別人給的示例代碼。通常為了方便,都是打成一個壓縮包的形式
    2012-03-03
  • ASP.Net生成一個簡單的圖片

    ASP.Net生成一個簡單的圖片

    ASP.Net生成一個簡單的圖片...
    2006-10-10
  • ASP.NET?Core中的Blazor組件介紹

    ASP.NET?Core中的Blazor組件介紹

    這篇文章介紹了ASP.NET?Core中的Blazor組件,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • ASP.NET?Core中的wwwroot文件夾

    ASP.NET?Core中的wwwroot文件夾

    這篇文章介紹了ASP.NET?Core中的wwwroot文件夾,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-02-02
  • asp.net網(wǎng)絡(luò)數(shù)據(jù)庫開發(fā)實(shí)例精解 源文件

    asp.net網(wǎng)絡(luò)數(shù)據(jù)庫開發(fā)實(shí)例精解 源文件

    asp.net網(wǎng)絡(luò)數(shù)據(jù)庫開發(fā)實(shí)例精解 源文件...
    2006-09-09
  • 程序中常用的種代碼

    程序中常用的種代碼

    程序中常用的種代碼...
    2006-08-08

最新評論

枣阳市| 长汀县| 忻城县| 包头市| 太康县| 马山县| 北海市| 泸定县| 甘泉县| 隆子县| 子长县| 裕民县| 广南县| 荥阳市| 东明县| 穆棱市| 泗洪县| 平谷区| 怀集县| 滁州市| 乐亭县| 宁夏| 柘城县| 南澳县| 泰来县| 三江| 镇赉县| 马尔康县| 腾冲县| 铜山县| 扎囊县| 本溪| 绥江县| 大同县| 宿州市| 延川县| 阿鲁科尔沁旗| 革吉县| 新泰市| 洞口县| 尚义县|