場景
ASP.NET中MVC添加Controller以及訪問其Action:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106796402
在上面新建完Controller並請求方法時返回的是string類型的字符串。
如果要返回一個View要怎麼辦。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
關注公衆號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。
實現
新建View
上面在新建Controller時會在Views目錄下新建相應的目錄,這裏是Hello,右擊Hello,添加--帶有視圖的MVC5 視圖頁(Razor)
選擇佈局頁,這裏選擇第一個,點擊確定
然後取名字爲Index.cshtml
建立完之後
添加之後的View可以直接右鍵選擇在Page Inspector中查看和在瀏覽器中查看
如果選擇了在Page Inspector中查看
這裏可以使用Razor引擎進行頁面設置
Razor引擎
Razor 是一種允許您向網頁中嵌入基於服務器的代碼(Visual Basic 和 C#)的標記語法
當網頁被寫入瀏覽器時,基於服務器的代碼能夠創建動態內容。在網頁加載時,服務器在向瀏覽器返回頁面之前,會執行頁面內的基於服務器代碼。由於是在服務器上運行,這種代碼能執行復雜的任務,比如訪問數據庫。
Razor在減少代碼冗餘、增強代碼可讀性和VS智能感知方面,都有着突出的優勢。 Razor一經推出就深受所有ASP.Net開發者的喜愛。
使用Razor的語法就是在@{}之間編寫C#邏輯變量,然後就可以通過@調用比如在上面新建的Index.cshtml
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
@{
var name = "霸道的程序猿";
}
<p>公衆號:@name</p>
然後上面的代碼就是聲明一個string 變量叫name.然後在下面的p標籤中調用。
View解析
上面新增的view的佈局文件的位置在Views下Shared目錄下_Layout.cshtml
在這裏就可以對佈局文件進行修改。
上面我們新建的View頁面的名字時Index.cshtml,這裏的名字要與Controller下的Action即方法名對應
Controller中的方法爲
public class HelloController : Controller
{
//
// GET: /Hello/
public ActionResult Index()
{
return View();
}
}
運行項目這裏就可以通過
http://localhost:2730/Hello/Index
訪問到Index這個View
Controller向View傳遞參數
在Controller中新建一個Action,並傳遞兩個參數,其中這兩個參數有默認值,即沒有參數傳遞時的值
public ActionResult Welcome(string name = "公衆號:霸道的程序猿",int count = 3)
{
ViewBag.Name = name;
ViewBag.Count = count;
return View();
}
然後在Views下新建一個View與Welcome同名
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>Welcome</h2>
<ul>
@for (int i = 0; i < ViewBag.Count; i++)
{
<li>@ViewBag.Name</li>
}
</ul>
}
然後運行項目在瀏覽器中輸入
http://localhost:2730/Hello/Welcome
上面是使用默認參數的效果,下面傳遞參數,輸入
http://localhost:2730/Hello/Welcome?name=badao&&count=5