zoukankan      html  css  js  c++  java
  • mvc 4 razor语法讲解和使用

    Razor语法的分类

    @using : 引入命名空间

    @model :声明强类型的数据model类型

    @section :定义要实现母版页的节的信息

    @RenderBody():当创建基于页面的布局时,视图的内容会和布局页合并,而新创建的视图的内容会通过布局页面的@RenderBody方法呈现在标签之间。

    @RenderPage :呈现一个页面。比如网页中固定的头部可以单独放在一个共享视图文件中,然后在布局也免中通过这个方法调用,例如 @RenderPage("~/Views/Shared/_Header.cshtml") 

    @RenderSection:布局页面还有节点(section)的概念,便于局部呈现

    1.行内(inline)C#(服务器端代码)形式(行内代码)

    @变量例如:@User.Name,变量或属性结束后,任何形式文本或者标签都自动被解析为html,如遇结束判断有歧义,请加括号如下

    @( 表达式 )  例如:@(i + 1) 或 @(User.Name)    括号里面为:表达式,或者变量

    @方法调用  例如:@Html.TextBox("UserName").ToString()

    2. 代码块

    第一种情况:

    @{ 代码块 }

    @if (条件) { 代码块 }

    @switch (条件) { 分支匹配代码块 }

    @for (循环控制) { 代码块 }

    @foreach (循环控制) { 代码块 }

    @while (循环控制) { 代码块 }

    @do { 代码块 } while (循环控制) 『 代码块里面的代码要严格按照c#语法来,每行结束必需有分号』

    第二种情况:(代码块中的文本或者Html客户端标签)

    单行文本

    @:行内文本 换行的话自动变成了C#服务器端代码。

    多行文本 

    任何标签对 例如:<div>多行文字</div>

    任何自闭合标签 例如:<img 多行属性 />

    纯文字使用伪标签<text> 例如:<text>多行文字,两侧标签不会被输出</text>

    3.其他

    电子邮箱可以自动识别,例如:123456@qq.com

    被误认为是电子邮箱的请加括号(),例如:123456(@UserName)

    要输出商标版权等的,请用@字符转义,例如:@@ →会输出单个字符@

  • 相关阅读:
    Perf 简介
    quagga源码分析--路由信息处理zebra-rib
    quagga源码分析--大内总管zebra
    定位虚拟机卡的原因
    quagga源码分析--内核通信netlink
    网络叠加模式VLAN、VxLAN、GRE
    DPDK support for vhost-user
    SR-IOV简介
    Nginx stream(TCP/UDP)负载均衡
    制作Ubuntu14.04的Openstack镜像
  • 原文地址:https://www.cnblogs.com/imust2008/p/4240058.html
Copyright © 2011-2022 走看看