校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > ASP.NET MVC中的視圖生成實例分析

ASP.NET MVC中的視圖生成實例分析

熱門標簽:關于宗地圖標注技術規范 河南語音外呼系統公司 河北網絡回撥外呼系統 400免費電話怎么辦理 400電話辦理最優質 寧夏機器人電銷 t3出行地圖標注怎么做 威海電銷 外呼電銷機器人軟件

本文實例分析了ASP.NET MVC中的視圖生成過程。分享給大家供大家參考。具體如下:

在 ASP.NET MVC 中,我們將前端的呈現劃分為三個獨立的部分來實現,Controller 用來控制用戶的操作,View 用來控制呈現的內容,Model 用來表示處理的數據。

從控制器到視圖

通常,在 Controller 中,我們定義多個 Action ,每個 Action 的返回類型一般是 ActionResult,在 Action 處理的最后,我們返回對于視圖的調用。

復制代碼 代碼如下:
public ActionResult Index()
{
    return this.View();
}

默認情況下,將會調用與 Action 同名的視圖,比如,在上面的 Action 中,將會使用名為 Index 的視圖。
 
如果我們傳遞了一個字符串參數,那么,這個字符串就回被視為視圖的名稱,例如,我們希望使用名為 IndexView 的視圖進行呈現,那么,可以如下完成。
復制代碼 代碼如下:
public ActionResult Index()
{
    return this.View("IndexView");
}

布局與視圖

MVC 會直接去找我們的視圖嗎?不會!
 
從 Action 返回之后,首先,MVC 會在 Views 文件夾下查看是否存在一個名為 _ViewStart.cshtml 的特殊文件,如果存在的話,就回執行這個文件。
 
默認情況下,這個文件的內容如下所示:

復制代碼 代碼如下:
@{
    Layout = "~/Views/Shared/_Layout.cshtml";
}

也就是說,它設置了我們的默認布局使用那一個文件文件。
 
布局等價于我們在 WebForm 中所使用的母版頁。
 
如果沒有這個文件,默認沒有使用布局。
 
如果有了這個文件,而我們在頁面中不想使用這個布局怎么辦呢?很簡單,在頁面中設置 Layout = null 來覆蓋掉它。
復制代碼 代碼如下:
@{
    Layout = null;
}

布局中的分區

在布局頁面中,默認就回存在一個特殊的指令 @RenderBody(),這是說,你在內容頁面中呈現的內容,將會在這里進行輸出。這就是在使用布局之后,你會發現你的視圖中已經沒有了 html> 標記的原因。

復制代碼 代碼如下:
body>
    @RenderBody()
/body>

假如說,我們希望在布局中的多個位置進行輸出,比如,樣式表通常在 head> 標記中,而現代的腳本則會出現在頁面的最后,頁面的內容當然出現在頁面的主體中了。這樣的話,我們在內容頁面的實際內容,將會需要在布局的不同部分進行呈現,而不是在同一個位置進行呈現了。
 
解決的辦法就是分區,實際上,類似于 WebForm 中的 ContentPlaceHolder ,定義一個命名的區域。
 
比如,下面我們定義了一個名為 scripts 的命名區域,第二個參數表示這個區域是可選的區域,在內容頁面中可以不用提供內容。
復制代碼 代碼如下:
body>
    @RenderBody()
 
    @RenderSection("scripts", required: false)
/body>

而在我們的內容視圖中,默認所有的內容都是填充到布局頁面中的 RenderBody 部分。
 
如果不是的話,就可以在內容頁面中,通過 @section 區域名稱{ } 的方式來定義準備輸出到對應區域中的內容了。
復制代碼 代碼如下:
@section scripts{
    script type="text/javascript">
        var i = 0;
    /script>
}

分部視圖

如果我們的頁面比較復雜,在同一個視圖中定義輸出的內容會導致頁面非常復雜,通過將頁面劃分為多個比較獨立的組成部分,可以將一個復雜的頁面拆分為多個子部分來呈現。比如頁面的標題部分,頁面的菜單,頁面的腳注部分等等。在 WebForm 中,解決這個問題的技術稱為用戶控件,在 MVC 中由兩個技術來解決:分部視圖和子Action。
 
先看分部視圖,分部視圖不依賴于 Action ,只能嵌入到其他獨立視圖中使用,你可以直接在視圖文件夾中創建分部視圖。
 
在使用分部視圖的頁面中,使用 RenderPartial 方法調用分部視圖。

復制代碼 代碼如下:
Html.RenderPartial("ProductSummary");

分部視圖與主視圖共享所有的數據,比如模型,ViewData,ViewBag 等等,這些數據可以直接在分部視圖中使用。
 
如果希望分部視圖使用不同的模型對象,簡化分部視圖中的數據復雜度,也可以直接傳遞一個模型對象過去。
復制代碼 代碼如下:
Html.RenderPartial("ProductSummary", p);

這里的第二個參數,將會在分部視圖中當在模型對象來使用。
 
需要注意的是 RenderPartial 方法的返回類型是 void,它會將輸出的內容直接輸出到回應的輸出流中。所以在使用上面語句的時候,不能直接嵌入到頁面中,需要放在一個 @ { } 語句中,如下所示。
復制代碼 代碼如下:
@{
  Html.RenderPartial("ProductSummary", p);
}

如果你不喜歡這樣的語法,而希望直接嵌入到頁面中,也可以使用 Html.Partial 方法來呈現,區別是這個方法返回呈現的 Html 片段,而不是直接輸出到輸出流中。
復制代碼 代碼如下:
@Html.Partial("ProductSummary", p)

子 Action 問題

由于分布視圖沒有處理能力,只能繼承主頁面的數據進行呈現,如果需要有處理能力,怎么辦呢?在 WebForm 中,我們可以使用 Server.Execute  來嵌入其它處理程序的輸出內容,在 MVC 中,我們使用子 Action 來處理。
 
子 Action 就是用戶不能直接訪問,只能在其他的 Action 中訪問的 Action 方法,它與普通的 Action 一樣,有 Action 方法,還有這個 Action 對應的視圖。
 
我們使用特性 ChildActionOnly 來說明這是一個子 Action。

復制代碼 代碼如下:
[ChildActionOnly]
public string Menu()
{
    return "Hello, from NavController";
}

如果用戶直接請求這個子 Action ,那么,系統會返回一個錯誤信息。
 
操作“menu”只能由子請求訪問。

在其它視圖中,可以使用 RenderAction 來訪問子 Action,類似于 RenderPartial 方法,這個方法直接將內容輸出到輸出流中,由于它們的返回類型都是 void ,所以需要使用 @{} 來使用。

復制代碼 代碼如下:
@{ Html.RenderAction("Menu", "Nav"); }

同樣,使用 Action 則可以直接返回一個 Html 片段,就不用使用一個 @{ } 了。
復制代碼 代碼如下:
!--  Action -->
@Html.Action("Menu", "Nav")

希望本文所述對大家的asp.net程序設計有所幫助。

您可能感興趣的文章:
  • ASP.NET MVC 控制器與視圖
  • ASP.NET MVC從控制器傳遞數據到視圖的四種方式詳解
  • ASP.NET MVC4入門教程(三):添加一個視圖
  • ASP.NET MVC從視圖傳參到控制器的幾種形式
  • asp.net core mvc權限控制:在視圖中控制操作權限
  • 詳解使用asp.net mvc部分視圖渲染html
  • asp.net mvc4 mysql制作簡單分頁組件(部分視圖)
  • ASP.NET MVC中分部視圖的應用方法

標簽:廣元 池州 淮北 固原 咸寧 樂山 吉林 賀州

巨人網絡通訊聲明:本文標題《ASP.NET MVC中的視圖生成實例分析》,本文關鍵詞  ASP.NET,MVC,中的,視圖,生成,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《ASP.NET MVC中的視圖生成實例分析》相關的同類信息!
  • 本頁收集關于ASP.NET MVC中的視圖生成實例分析的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    99re66热这里只有精品3直播| 精品视频一区三区九区| 欧美卡1卡2卡| 日韩中文字幕区一区有砖一区| 蜜臀av性久久久久蜜臀aⅴ流畅| 国产麻豆视频一区二区| 日韩美女一区二区三区四区| 亚洲精品ww久久久久久p站| 国产精品一区二区男女羞羞无遮挡| 欧美日本在线播放| 日韩中文字幕av电影| 欧美老肥妇做.爰bbww| 亚洲国产毛片aaaaa无费看| 午夜精品久久久久久久99樱桃| 国产在线麻豆精品观看| 日韩一级精品视频在线观看| 亚洲综合视频网| 91女厕偷拍女厕偷拍高清| 91精品国产乱| 一区二区在线观看不卡| www.99精品| 日本一区二区三区免费乱视频 | 91久久香蕉国产日韩欧美9色| 久久午夜羞羞影院免费观看| 精品一区二区精品| 国产香蕉久久精品综合网| 高清免费成人av| 久久综合国产精品| 一本久久a久久免费精品不卡| 《视频一区视频二区| 色婷婷精品久久二区二区蜜臂av | 国产福利电影一区二区三区| 久久久精品tv| 日本高清不卡aⅴ免费网站| 亚洲福利视频一区二区| 欧美一区二区女人| 高清av一区二区| 一区二区三区小说| 成人免费视频一区| 色诱视频网站一区| 中文字幕亚洲不卡| 日韩色视频在线观看| 国产一区二区不卡在线| 亚洲一区二区三区不卡国产欧美| 欧美精品123区| 91视频在线看| 国产原创一区二区| 婷婷激情综合网| 亚洲人成网站精品片在线观看| 日韩免费观看高清完整版在线观看| 国产成人免费网站| 午夜亚洲福利老司机| 亚洲欧洲精品天堂一级| 欧美sm极限捆绑bd| 91精品免费观看| 欧美无砖专区一中文字| 93久久精品日日躁夜夜躁欧美| 免费在线欧美视频| 一区二区三区欧美久久| 国产精品久久久久久久久免费丝袜| 欧美肥大bbwbbw高潮| 欧美最猛黑人xxxxx猛交| 成人精品电影在线观看| 国产69精品久久99不卡| 国产一区二区毛片| 国产在线日韩欧美| 国产suv精品一区二区三区| 国产综合色产在线精品 | 欧美美女网站色| 在线亚洲人成电影网站色www| 激情综合网最新| 国产在线视频不卡二| 国产九色精品成人porny| 国产高清不卡一区| 91理论电影在线观看| 在线影视一区二区三区| 在线播放中文一区| 国产婷婷一区二区| 亚洲精品欧美在线| 亚洲成人动漫在线观看| 亚洲18影院在线观看| 久久国产精品99精品国产| 成人中文字幕合集| 色婷婷亚洲综合| 欧美成人精品高清在线播放| 欧美成人r级一区二区三区| 欧美亚洲丝袜传媒另类| 欧美一级在线免费| ww亚洲ww在线观看国产| 中文字幕成人av| 日韩国产高清影视| 91免费视频大全| 日韩精品一区二区三区四区视频| 亚洲三级免费观看| 国产成a人无v码亚洲福利| 成人美女在线视频| 精品国产一区二区三区不卡| 亚洲精品一二三| 国产69精品久久777的优势| 在线综合视频播放| 一区二区在线电影| eeuss鲁片一区二区三区在线观看| 欧美日韩国产影片| 国产欧美一区二区三区在线看蜜臀 | 国产日韩欧美电影| 亚洲美女视频一区| 国内精品免费在线观看| 欧美三级一区二区| 伊人性伊人情综合网| 成人激情小说乱人伦| 久久综合精品国产一区二区三区 | 成人免费在线观看入口| 丁香天五香天堂综合| 欧美精品一区二区三区很污很色的 | 欧美一区午夜视频在线观看| 亚洲电影中文字幕在线观看| 91丨九色porny丨蝌蚪| 亚洲免费在线播放| 91福利视频网站| 亚洲国产日产av| 欧美精品一卡二卡| 麻豆国产精品官网| 国产夜色精品一区二区av| 激情av综合网| 综合久久久久综合| 色综合久久天天| 天堂资源在线中文精品| 亚洲精品一区二区三区四区高清| 国产一区在线看| 亚洲自拍偷拍麻豆| 欧美一区二区成人6969| 成av人片一区二区| 亚洲尤物视频在线| 久久久久久久久99精品| 色天天综合色天天久久| 亚洲福利电影网| 欧美一区二区三区视频在线| 国内成+人亚洲+欧美+综合在线| 中文字幕一区二区三中文字幕| 欧洲亚洲国产日韩| 国产a级毛片一区| 国产精品午夜久久| 欧美日韩中文精品| a在线欧美一区| 国产aⅴ综合色| 青娱乐精品在线视频| 亚洲精品成a人| 亚洲欧美综合另类在线卡通| 精品国产乱码久久| 欧美日韩成人在线一区| 99re8在线精品视频免费播放| 亚洲国产成人av好男人在线观看| 久久综合视频网| 日本大胆欧美人术艺术动态| 国产不卡在线一区| 日日夜夜免费精品| 亚洲大片精品永久免费| 亚洲国产成人va在线观看天堂| 亚洲自拍偷拍av| 婷婷夜色潮精品综合在线| 亚洲妇女屁股眼交7| 免费观看久久久4p| 国产在线不卡一卡二卡三卡四卡| 久久爱www久久做| 一本久久a久久免费精品不卡| 欧美在线一区二区三区| 日韩欧美自拍偷拍| 久久精品夜色噜噜亚洲a∨| 亚洲免费观看高清完整版在线| 亚洲午夜免费视频| 国内欧美视频一区二区| 成人午夜激情在线| 91精品国产黑色紧身裤美女| 精品久久久影院| 亚洲h在线观看| 成人国产精品免费观看视频| 欧美亚洲综合在线| 中文字幕乱码一区二区免费| 亚洲一区在线看| 成人自拍视频在线| 日韩精品一区二区三区视频播放 | 奇米精品一区二区三区在线观看| 丰满亚洲少妇av| 日韩免费视频一区| 亚洲777理论| 欧美日韩亚洲综合一区二区三区| 国产丝袜美腿一区二区三区| 午夜av电影一区| 欧日韩精品视频| 亚洲另类中文字| 91论坛在线播放| 亚洲男人天堂av网| 91一区一区三区| 亚洲男人的天堂在线aⅴ视频| 国产精品一区二区三区网站| 91精品国产一区二区三区香蕉| 艳妇臀荡乳欲伦亚洲一区| 97超碰欧美中文字幕| 国产精品久久久久久久岛一牛影视| 精品中文字幕一区二区小辣椒|