ASP.NET中添加View与Razor引擎以及View解析和Controller向View传值
場景
ASP.NET中MVC添加Controller以及訪問其Action:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106796402
在上面新建完Controller并請求方法時(shí)返回的是string類型的字符串。
如果要返回一個(gè)View要怎么辦。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
關(guān)注公眾號
霸道的程序猿
獲取編程相關(guān)電子書、教程推送與免費(fèi)下載。
實(shí)現(xiàn)
新建View
上面在新建Controller時(shí)會在Views目錄下新建相應(yīng)的目錄,這里是Hello,右擊Hello,添加--帶有視圖的MVC5 視圖頁(Razor)
?
選擇布局頁,這里選擇第一個(gè),點(diǎn)擊確定
?
然后取名字為Index.cshtml
建立完之后
?
添加之后的View可以直接右鍵選擇在Page Inspector中查看和在瀏覽器中查看
?
如果選擇了在Page Inspector中查看
?
這里可以使用Razor引擎進(jìn)行頁面設(shè)置
Razor引擎
Razor 是一種允許您向網(wǎng)頁中嵌入基于服務(wù)器的代碼(Visual Basic 和 C#)的標(biāo)記語法
當(dāng)網(wǎng)頁被寫入瀏覽器時(shí),基于服務(wù)器的代碼能夠創(chuàng)建動(dòng)態(tài)內(nèi)容。在網(wǎng)頁加載時(shí),服務(wù)器在向?yàn)g覽器返回頁面之前,會執(zhí)行頁面內(nèi)的基于服務(wù)器代碼。由于是在服務(wù)器上運(yùn)行,這種代碼能執(zhí)行復(fù)雜的任務(wù),比如訪問數(shù)據(jù)庫。
Razor在減少代碼冗余、增強(qiáng)代碼可讀性和VS智能感知方面,都有著突出的優(yōu)勢。 Razor一經(jīng)推出就深受所有ASP.Net開發(fā)者的喜愛。
使用Razor的語法就是在@{}之間編寫C#邏輯變量,然后就可以通過@調(diào)用比如在上面新建的Index.cshtml
@{Layout = "~/Views/Shared/_Layout.cshtml"; }@{var name = "霸道的程序猿"; } <p>公眾號:@name</p>然后上面的代碼就是聲明一個(gè)string 變量叫name.然后在下面的p標(biāo)簽中調(diào)用。
View解析
上面新增的view的布局文件的位置在Views下Shared目錄下_Layout.cshtml
?
在這里就可以對布局文件進(jìn)行修改。
上面我們新建的View頁面的名字時(shí)Index.cshtml,這里的名字要與Controller下的Action即方法名對應(yīng)
Controller中的方法為
??? public class HelloController : Controller{//// GET: /Hello/public ActionResult Index(){return View();}}運(yùn)行項(xiàng)目這里就可以通過
http://localhost:2730/Hello/Index
訪問到Index這個(gè)View
?
Controller向View傳遞參數(shù)
在Controller中新建一個(gè)Action,并傳遞兩個(gè)參數(shù),其中這兩個(gè)參數(shù)有默認(rèn)值,即沒有參數(shù)傳遞時(shí)的值
??????? public ActionResult Welcome(string name = "公眾號:霸道的程序猿",int count = 3){ViewBag.Name = name;ViewBag.Count = count;return View();}然后在Views下新建一個(gè)View與Welcome同名
@{Layout = "~/Views/Shared/_Layout.cshtml"; }<h2>Welcome</h2> <ul>@for (int i = 0; i < ViewBag.Count; i++){<li>@ViewBag.Name</li>} </ul>}然后運(yùn)行項(xiàng)目在瀏覽器中輸入
http://localhost:2730/Hello/Welcome
?
上面是使用默認(rèn)參數(shù)的效果,下面?zhèn)鬟f參數(shù),輸入
http://localhost:2730/Hello/Welcome?name=badao&&count=5
?
總結(jié)
以上是生活随笔為你收集整理的ASP.NET中添加View与Razor引擎以及View解析和Controller向View传值的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ASP.NET在访问Controller
- 下一篇: ASP.NET中连接Sqlserver数