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)

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

  • 相关阅读:
    文件过滤驱动隐藏目标文件
    POJ 3345 Bribing FIPA(树形DP)
    POJ 1018 Communication System(分组背包DP)
    无用的,ring0暴力枚举进程模块
    HDOJ 3496 Watch The Movie(基本二维背包)
    栈回溯法的一个例子
    代码这样写奇丑无比...编码前期要做好规划工作啊
    多核发dpc安全inline hook
    纵我不往,知识不来学习Java第一周心得
    对“TD信息树”的使用体验
  • 原文地址:https://www.cnblogs.com/imust2008/p/4240058.html
Copyright © 2011-2022 走看看