ASP.NET MVC-Razor

摘要:ASP.NET MVC-Razor

多年沒寫.NET,沒想到,增加了不少好用的東西,

寫ASP、ASP.NET時代的痛苦,沒想到,ASP.NET MVC Razor,讓view中的程式撰寫,變得很清楚。

 

以下是我這次讀完Razor 後的大約筆記

@(變數)   輸出變數內容

@變數   輸出變數內容

@{

     var name = "tom";

     @:你好,我是@name

}

@: 在程式碼裡面,輸出HTML

在程式碼裡面的話,只要中間有html字串,也會自動被判別為輸出html

@{

     <text>@name<text>

}

 

跳脫字元

@@

 

@if(){

}

else

{

}

 

@foreach(var item in Data)

{

         <text>@item</text>

}

 

在 _ViewStart.cshtml

@{
   Layout = "~/Views/Shared/_Layout.cshtml";
}
 
 
預設坑洞
@RenderBody() , 所有主要內容,都往這裡塞
 
具名坑洞
@RenderSection("featured",required:false)
 
當使用@section featured{
 
}
內容,則會塞到@RenderSection("featured",required:false)的位置裡
 
 
有些常用的@{ }片段或判斷輸出
如下
 
@if(Model.class_type==0){
          <text>A類別</text>
}
else
{
          <text>B類別</text>
}
 
則可以使用@helper獨立出來。
@helper ShowClassName(int class_type){
      if(class_type==0){
          <text>A類別</text>
      }
      else
      {
          <text>B類別</text>
      }     
}
 
這如果有不同的View都會用到的話,
也可以抽到
App_Code裡
 
建立App_Code資料夾
 
建立helper.cshtml
App_Code/新增項目/Web/MVC 4部份頁面 (Razor)
 
建立一個UIHelper
使用時就用
@UIHelper.ShowClassName(Model.class_type)