精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ASP.NET MVC5教學(xué)之如何創(chuàng)建MVC文件架構(gòu)

jf_78858299 ? 來源:python技術(shù)探秘 ? 作者:一品文學(xué)閣 ? 2023-03-29 11:15 ? 次閱讀

在講解關(guān)于MVC文件架構(gòu)之前,我們先來創(chuàng)建一個MVC的項目。

創(chuàng)建MVC項目

首先,我們使用Visual Studio2019創(chuàng)建一個MVC架構(gòu)的應(yīng)用程序(Visual Studio2019下載及安裝,可點擊下方 閱讀原文 到我的博客中查找相關(guān)文章)。步驟如下:

首先打開VS2019,在啟動頁選擇【創(chuàng)建新項目】。

圖片

然后選擇創(chuàng)建 ASP.NET Web 應(yīng)用程序。

圖片

填寫項目名稱,點擊創(chuàng)建。

圖片

選擇MVC,去掉高級選項中的【為HTTPS配置】,然后點擊創(chuàng)建。

圖片

這時我們的MVC結(jié)構(gòu)的項目就創(chuàng)建完成了,目錄結(jié)構(gòu)如下:

圖片

至此,我們第一個MVC項目就創(chuàng)建完成了,后續(xù)的網(wǎng)站開發(fā)都是基于這個架構(gòu)完成的。下面我講下關(guān)于MVC的目錄結(jié)構(gòu)。

MVC目錄結(jié)構(gòu)

MVC的目錄結(jié)構(gòu)大體如下:

  1. Views(視圖)

    存放與應(yīng)用程序有關(guān)的 HTML 文件。

  2. Controllers控制器

    存放負責(zé)處理用戶輸入及響應(yīng)的控制器類。

  3. Models(模塊)

    存放用來顯示到HTML中的程序模型類。

  4. App_Start(入口處理程序)

    包含應(yīng)用程序的配置邏輯文件。

  5. App_Data(應(yīng)用程序存儲文件)

    用來存儲應(yīng)用程序數(shù)據(jù)。通常以文件形式包含數(shù)據(jù)存儲。

  6. Content(存放靜態(tài)文件)

    頁面顯示用到的靜態(tài)文件,例如樣式表css文件,圖標,圖片等內(nèi)容。

  7. Scripts(存放JavaScript文件)

    存放js文件。

  8. fonts(存放字體文件)

    存放字體文件。

  9. Global.asax(全局程序設(shè)置)

    主要是web應(yīng)用程序的全局設(shè)置文件。

  10. packages.config(管理NuGet包)

用于跟蹤管理已安裝的軟件包及其各自的版本。
11. Web.config(網(wǎng)站配置)

存放一些應(yīng)用程序用到的配置信息

MVC的目錄結(jié)構(gòu)基本上就是這些了。這里每個文件在應(yīng)用程序中都有其作用,下面我講下每個文件的用處是什么。

MVC架構(gòu)下的文件都有哪些作用?

Global.asax(全局配置文件)

global.asax這個文件包含的是全局應(yīng)用程序事件的事件處理程序。

簡單來說,我們可以在這個文件中添加一些整個應(yīng)用程序運行過程中都可調(diào)用的代碼。比如,我們添加一個當應(yīng)用程序遇到異常時就進入到此文件來處理的代碼,那么當應(yīng)用程序在運行過程中遇到了異常,則會調(diào)用這段代碼,那么我們就可以控制當程序報錯了,給用戶一個反饋界面,讓用戶體驗更好一些。

再比如,我們可以添加一個當應(yīng)用程序啟動時,適用于全局范圍的初始化代碼,例如路由規(guī)則,篩選規(guī)則,文件捆綁規(guī)則等,那么這些規(guī)則在接下來所有的應(yīng)用程序中都適用。我們創(chuàng)建的MVC項目默認給我們添加了這三個規(guī)則。如圖:

圖片

可以看到,MvcApplication類繼承自HttpApplication,HttpApplication是定義對 ASP.NET 應(yīng)用程序內(nèi)所有應(yīng)用程序?qū)ο蠊玫姆椒ā傩院褪录K詆lobal中能處理的事件不止我剛才提到的兩種,更多詳細內(nèi)容可點擊 閱讀原文 到我的博客中查找相關(guān)的文章。

如圖所示,Application_Start函數(shù)是應(yīng)用程序入口,也就是說,當應(yīng)用程序啟動時,會先調(diào)用這個方法。

再看方法內(nèi)部,它給所有后續(xù)的程序注冊了路由,篩選,打包器三個規(guī)則,但這三個規(guī)則沒有直接寫在函數(shù)中,而是調(diào)用了App_Start文件下的配置類來管理。接下來我們就來看App_Start這個文件夾的作用。

App_Start文件夾

App_Start文件夾在MVC架構(gòu)中是存放應(yīng)用程序啟動時全局配置的邏輯文件。當我們創(chuàng)建MVC項目后,會自動生成以下三個文件:

  1. BundleConfig(打包器)

    作用:將靜態(tài)文件(例如css,js文件)打包,便于調(diào)用。

  2. FilterConfig(過濾器)

    作用:可以判斷用戶登錄和權(quán)限,動態(tài)Action管理,防篡改等。

  3. RouteConfig(路由器)

    作用:將瀏覽器的URL請求映射到特定的MVC控制器動作。也就是將網(wǎng)站的URL不再以.html或.aspx結(jié)尾,而是設(shè)定為統(tǒng)一的模式來顯示。

Controller

MVC的核心就是Controller(控制器),它負責(zé)處理瀏覽器傳送過來的所有請求,并決定要將什么內(nèi)容響應(yīng)給瀏覽器。Controller文件夾下儲存的就是各種控制器文件。

控制器本身只是一個類,該類有許多方法。在這些方法中,只要是公開方法,該方法就會被視為是一種動作(Action)。只要有動作存在,就可以通過該動作方法接收網(wǎng)頁請求并決定響應(yīng)視圖。

同時,按照MVC的約定,控制器文件需符合以下規(guī)則:

  1. Controller必須為公開類;
  2. Controller名稱必須以Controller結(jié)尾;
  3. 必須繼承自MVC內(nèi)建的Controller類;
  4. 所以Action動作方法必須為公開方法。

關(guān)于Controller的使用方法我會在后續(xù)文章中詳細說明。

Models

Models文件夾下,儲存的是最終顯示到View頁面中的視圖模型。Model主要負責(zé)維持數(shù)據(jù)狀態(tài),通過它將數(shù)據(jù)從數(shù)據(jù)庫中檢索出來傳遞給Controller處理,客戶端傳過來的數(shù)據(jù)也是通過Model傳回數(shù)據(jù)存儲系統(tǒng)中。

可以說,Model(視圖模型)是View(視圖)連接數(shù)據(jù)庫的一個橋梁,它將呈現(xiàn)在用戶面前的內(nèi)容轉(zhuǎn)換為可存儲在數(shù)據(jù)庫中的內(nèi)容,也是非常重要的。

Views

View主要用于呈現(xiàn)數(shù)據(jù)。由于Controller和相關(guān)的Service處理完業(yè)務(wù)邏輯并將結(jié)果打包成了Model實體,所以View只需要負責(zé)將Model實體轉(zhuǎn)換為視圖呈現(xiàn)出來。更詳細的內(nèi)容我會在后續(xù)文章中加以說明。

Web.config

Web.config是一個配置文件,是基于XML的文本文件。

在發(fā)布Web應(yīng)用程序時,Web.config文件并不編譯進dll文件中,它主要存儲一些ASP.NET應(yīng)用程序的配置信息,比如上傳文件的保存路徑可配置在appSettings節(jié)點;數(shù)據(jù)庫連接字符可保存在connectionStrings節(jié)點;用于定義自定義錯誤信息的customErrors節(jié)點等等…

總結(jié)

通過本文可以了解到,如何創(chuàng)建第一個MVC項目、MVC框架的目錄結(jié)構(gòu)以及MVC下主要文件的作用。更多MVC5框架內(nèi)容可關(guān)注我后續(xù)文章。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 控制器
    +關(guān)注

    關(guān)注

    112

    文章

    16198

    瀏覽量

    177399
  • Asp.net
    +關(guān)注

    關(guān)注

    0

    文章

    36

    瀏覽量

    13844
  • MVC
    MVC
    +關(guān)注

    關(guān)注

    0

    文章

    73

    瀏覽量

    13841
收藏 人收藏

    評論

    相關(guān)推薦

    鼎普科技誠聘.net開發(fā)工程師

    asp.net mvc架構(gòu),能夠進行mvc項目開發(fā) 北京鼎普科技股份有限公司誠聘:測試主管、windows內(nèi)核開發(fā)工程師、C/C++中高級開發(fā)人員、linux開發(fā)工程師、嵌入式開發(fā)工程
    發(fā)表于 02-18 11:38

    Net系列MVC的使用

    2018-04-08 開胃學(xué)習(xí)Net 系列 - MVC作業(yè)
    發(fā)表于 03-27 15:35

    北大青鳥asp.net教程

    北大青鳥asp.net教程.ASP.NET 和 Web 窗體 理解Web窗體和在B/S結(jié)構(gòu)中IIS的工作原理在ASP.NET應(yīng)用程序中使用可視化組件和  ASP.NET內(nèi)部對
    發(fā)表于 07-15 16:21 ?0次下載

    Programming Microsoft ASP.NET

    Programming Microsoft ASP.NET 3.5 ASP.NET pages are dynamically compiled on demand when first
    發(fā)表于 10-21 09:23 ?59次下載
    Programming Microsoft <b class='flag-5'>ASP.NET</b>

    ASP.NET課程設(shè)計案例精編

    ASP.NET課程設(shè)計案例精編是一本全面講解ASP.NET編程方法和技巧的書,從ASP.NET的基本知識點入手,以ASP.NET網(wǎng)絡(luò)應(yīng)用為主,詳細講述了大量的編程實例。這些實例基
    發(fā)表于 01-07 16:14 ?144次下載
    <b class='flag-5'>ASP.NET</b>課程設(shè)計案例精編

    Web Service和ASP.NET在GIS中的應(yīng)用探討

    介紹Web Service 和ASP.NET 的基本結(jié)構(gòu)和概念,針對傳統(tǒng)GIS 存在的數(shù)據(jù)共享困難,以及出于簡化GIS 開發(fā)過程的考慮,提出了基于Web Service 和ASP.NET 的GIS 架構(gòu),通過ADO.
    發(fā)表于 08-31 16:32 ?8次下載

    Asp.net MVC框架自定義視圖引擎的實現(xiàn)

    針對當前Web 應(yīng)用系統(tǒng)層次不夠分明、結(jié)構(gòu)不夠清晰等不足,結(jié)合MVC 設(shè)計模式,實現(xiàn)了基于Asp.net MVC 框架的自定義視圖引擎,在顯示層將顯示邏輯與應(yīng)用邏輯相分離,將數(shù)據(jù)訪問
    發(fā)表于 01-15 14:13 ?36次下載

    ASP.NET 2.0網(wǎng)絡(luò)開發(fā)技術(shù)》 ASP.NET 2.0核

    ASP.NET 2.0網(wǎng)絡(luò)開發(fā)技術(shù)》 ASP.NET 2.0核心對象
    發(fā)表于 02-07 15:05 ?0次下載

    ASP.NET 2.0網(wǎng)絡(luò)開發(fā)技術(shù)》 走進ASP.NET 2.

    ASP.NET 2.0網(wǎng)絡(luò)開發(fā)技術(shù)》 走進ASP.NET 2.0
    發(fā)表于 02-07 15:11 ?0次下載

    ASP.net Ajax開發(fā)》初識ASP.NET AJAX

    ASP.net Ajax開發(fā)》初識ASP.NET AJAX
    發(fā)表于 02-07 15:11 ?0次下載

    如何使用MVC來開發(fā)音樂商店網(wǎng)站?

    ASP.NET MVC框架是微軟推出的一種使用MVC進行網(wǎng)站開發(fā)的應(yīng)用,MVC的全稱是模型一視圖一控制器,由3個分離的主要的組件組成,分別是:模型,視圖和控制器。
    發(fā)表于 08-28 08:00 ?6次下載
    如何使用<b class='flag-5'>MVC</b>來開發(fā)音樂商店網(wǎng)站?

    常用HTML、CSS那你知道ASP.NET嗎?

    簡單來說,ASP.NET 是一個使用 HTML、CSS、JavaScript 和服務(wù)器腳本創(chuàng)建網(wǎng)頁和網(wǎng)站的開發(fā)框架。 眾所周知,目前PHP和ASP.NET是最主流的使用最多的Web網(wǎng)站開發(fā)技術(shù)。兩者之間也是存在競爭關(guān)系的,
    的頭像 發(fā)表于 03-29 11:12 ?946次閱讀

    ASP.NET MVC5教學(xué)Global.asax文件

    Global.asax是一個文本文件,它提供全局可用代碼。這些代碼包括應(yīng)用程序的事件處理程序以及會話事件、方法和靜態(tài)變量。有時該文件也被稱為應(yīng)用程序文件。 Global.asax 文件
    的頭像 發(fā)表于 03-29 11:17 ?993次閱讀
    <b class='flag-5'>ASP.NET</b> <b class='flag-5'>MVC5</b><b class='flag-5'>教學(xué)</b><b class='flag-5'>之</b>Global.asax<b class='flag-5'>文件</b>

    ASP.NET MVC5教學(xué)之過濾器(上)

    MVC中的每一個請求,都會分配給相應(yīng)的控制器(Controller)和對應(yīng)的行為方法(Action)去處理,那么如果我們想要在Action處理的前后加上一些額外的處理邏輯怎么辦呢?這時候就用到了過濾器(Filters)。 在ASP.NET
    的頭像 發(fā)表于 03-29 11:20 ?877次閱讀
    <b class='flag-5'>ASP.NET</b> <b class='flag-5'>MVC5</b><b class='flag-5'>教學(xué)</b>之過濾器(上)

    ASP.NET MVC5教學(xué)之過濾器(下)

    MVC中的每一個請求,都會分配給相應(yīng)的控制器(Controller)和對應(yīng)的行為方法(Action)去處理,那么如果我們想要在Action處理的前后加上一些額外的處理邏輯怎么辦呢?這時候就用到了過濾器(Filters)。 在ASP.NET
    的頭像 發(fā)表于 03-29 11:20 ?802次閱讀
    <b class='flag-5'>ASP.NET</b> <b class='flag-5'>MVC5</b><b class='flag-5'>教學(xué)</b>之過濾器(下)