VictorStone

导航

 

 

 

01 代码块

       @{

              //单行注释

              int x=123;

              string y = "hello world";

              var z = “how are you”;

       }

 

02 渲染输出

       A 经过HTML编码

       <span>收到消息@{model.Message}@DateTime.Now </span>  @*注意空格*@

<p>text @i.ToString()text</p     >@*变量方法输出,则不用加{},但要加在@前加空格。@*

      

       B 未经HTML编码

       <span> @Html.Raw(model.Message)  </span>

      

03 代码和标记混合

       @foreach(var item in items){

              <span> @model.Message </span>

       }

 

04 代码和文本混合

       A 单行

       @if(foo){

              @:原样文本

       }

      

       B 多行 (呈现没有被HTML元素包装的多行内容块变得方便)

       @if(foo){

              <text>原样文本</text>

       }

      

05 表达式与文本混合

       Hello @strTitleVar.  @strNameVar.    <!-- Hello zhang Mr. wang Ms. -->

       @{  var i = “10”; }  

<p> i = @i.AsInt() </p>               <!-- 输出 i = 10 -->

      

06 Email地址 Razor自动识别Email地址: wang123@163.com, 如果要输出@符号, 则应用@@进行转义, 或者使用HTML ASCII编码&#64;

    <span> 这是一个邮件连接符@@ </span>

       <span> 这是一个邮件地址wang123@163.com </span>

 

07 显示渲染输出

    <span> ISBN @(strISBN) </span>

      

08 服务器端注释

       @*

              这是一个多行注释

              换行的时候是这样的.

       *@

      

09 渲染输出动态方法 @( )

       当前用户: @(userObject1.GetName())

      

10 创建Razor委托

       @{

              Func<dynamic, object> b =

                     @<strong> @strItem  </strong>

       }

      

       @b("Bold this")

      

11 内容中混合代码

       <ul>

              @foreach(var p in products){

                     <li>

                            @p.ProductName

                           

                            @if(p.Price == 0){

                                   @: (单价等于0,不正常哟!)

                            }

                            else if (p.Price <= 0.5){

                                   @: (价格才 @p.Price 太便宜了!)

                            }

                     </li>

              }

       </ul>

      

12 内容在HTML标记闭合中时, 不需要每行加@

       @if (p.UnitsInStock == 0){

              <p>

                     第一行内容

                     第二行内容

                     时间: @DateTime.Now

                     第四行的内容

              </p>

       }

      

13 内容外部没有HTML标记包装时

       @if (p.UnitsInStock == 0){

                     @: 第一行内容

                     @: 第二行内容

                     @: 第三行内容

       }

      

       @if (p.UnitsInStock == 0){

              <text>

                     第一行内容

                     第二行: 时间: @DateTime.Now

                     第三行内容

              </text>

       }     

      

      

      

posted on 2012-05-12 13:42  VictorStone  阅读(248)  评论(0编辑  收藏  举报