Razor基礎構文

14204 ワード

一、紹介
RazorはASP.NET MVCビューエンジンのコード、サポート.cshtmlと.vbhtmlの2種類のテンプレートファイル、記号@はサービス側のコードの始まりをマークして、以前よりasp.Netの<%><より簡潔
 
二、基本的な使い方
  1.@* *@コメント
<div>

    <h3>@@**@@  </h3>



    @*

             

    *@

</div>

     2.
@1行のコードを定義
<div>

    <h3>@@      </h3>

    <span>Cur Time is @DateTime.Now.ToString("yyyy-MM-dd")</span>

</div>

     
3.@{...}コードブロックを定義し、HTMLタグとコードを混在させることができます.
<div>

    <h3>@@{...}     ,  HTML         </h3>

    <span>

        @{

            string name = "Tom";

            string msg = "Hi";



            <span>@name say @msg</span>

        }

    </span>

</div>

     
4.@:後から内容別に展示させる
<div>

    <h3>@@:        </h3>

    @{

        @:this is @name

    }

</div>

     
5.@helperカスタムクリップ
@helper ShowCurDate(){

    <span>@DateTime.Now.ToString("yyyy-MM-dd")</span>

}



<div>

    <h3>@@helper     </h3>

    <span><xmp>

            @@helper ShowCurDate(){

                <span>@@DateTime.Now.ToString("yyyy-MM-dd")</span>

            }

        </xmp>

          :@@ShowCurDate()   :@ShowCurDate()

    </span>

</div>

     
6.@functionsカスタム関数
@functions{

    public string ShowMyDate(){

        return DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");

    }

}



<div>

    <h3>@@functions     </h3>

    <span><xmp>

            @@functions{

                public string ShowMyDate(){

                    return DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");

                }

            }

        </xmp>

          :@@ShowMyDate()   :@ShowMyDate()

    </span>

</div>

     
7.@RenderBody()
<div>

    <h3>@@RenderBody()</h3>

    <span>

                  ,        

    </span>

</div>

     
8.@RenderPage()
<div>

    <h3>@@RenderPage()</h3>

    <span>

              @RenderPage("~/Views/Test/Footer.cshtml")  

    </span>

</div>

     
9.@RenderSection()
@section mySection{

    <section class="featured">

        <div class="content-wrapper">

            <h2>

                    Razor    

            </h2>

        </div>

    </section>

}



<div>

    <h3>@@RenderSection()</h3>

    <span>

        @@section       :

        <xmp>

            @@section mySection{

                <section class="featured">

                    <div class="content-wrapper">

                        <h2>

                                Razor    

                        </h2>

                    </div>

                </section>

            }

        </xmp>

               @RenderSection("mySection", false)  

    </span>

</div>

  10.@model定義ビューモデル
@model MvcTest.Controllers.Users



<div>

    <h3>@@model      </h3>

    <span><xmp>

            @@model MvcTest.Controllers.Users

        </xmp>

          :  @@Model   :Name:@Model.Name Age:@Model.Age

    </span>

</div>