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)

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

  • 相关阅读:
    window.location.href的用法
    echarts折线图阴影设置
    SVN使用教程图文教程
    jksj算法训练营-第二课02 时间复杂度和空间复杂度分析
    jkjj算法训练营笔记-第二课01 训练环境配置、编码技巧和code style
    MySQL 基础模块的面试题总结
    MySQL 事务的面试题总结
    MySQL 中锁的面试题总结
    MySQL 命令和内置函数
    MySQL 性能优化 & 分布式
  • 原文地址:https://www.cnblogs.com/imust2008/p/4240058.html
Copyright © 2011-2022 走看看