• Razor、ASPX 语法分析


    Razor 是一种基于服务器端代码的可以转换为网页的标记语法。Razor 语法包括 Razor 标记、C# 和 HTML 组成。包含 Razor 的文件通常后缀名为 .cshtml 。
    Razor的作用域
    在这里插入图片描述
    Razor和Html混合编写
    a.在作用域内容如果是以html标签开始则视为文本输出
    b.如果输出@,则使用@@,
    在这里插入图片描述

    c.如果需在代码块中直接输出纯文字而不带HTML标签,则可以使用@:标签,如果在 “@:” 后面加上@就表示Razor语句的变量。注意前面要加空格

    @for(var i = 10; i < 21; i++) {

    Line @i

    }
    • @foreach (var x in Request.ServerVariables) {
    • @x
    • }
    @{ var i = 0; while (i < 5) { i += 1;

    Line @i

    } }

    @{
    string[] members = {“Jani”, “Hege”, “Kai”, “Jim”};
    int i = Array.IndexOf(members, “Kai”)+1;
    int len = members.Length;
    string x = members[2-1];
    }

    @{var price=50;}

    @if (price>30) {

    The price is too high.

    }

    @{var price=20;}

    @if (price>30) {

    The price is too high.

    } else {

    The price is OK.

    }

    @{var price=25;}

    @if (price>=30) {

    The price is high.

    } else if (price>20 && price<30) {

    The price is OK.

    } else {

    The price is low.

    }

    @{
    var weekday=DateTime.Now.DayOfWeek;
    var day=weekday.ToString();
    var message=“”;
    }

    @switch(day) { case "Monday": message="This is the first weekday."; break; case "Thursday": message="Only one day before weekend."; break; case "Friday": message="Tomorrow is weekend!"; break; default: message="Today is " + day; break; }

    @message

    @RenderBody()来呈现子Web页面的内容,它可以省去我们在每个视图文件中写相同的html元素、JS和样式等的工作。
    在这里插入图片描述

    @RenderPage()方法
    page当需要在一个页面中,输出另外一个Razor文件(页面)的内容时候用到,比如头部或尾部这些公共的内容时需要用到,比如头部或尾部这些公共的内容时需要用到,用@RenderPage()方法
    在这里插入图片描述
    @RenderSection()
    解释:Section是定义在Layout的页面中使用的。在Layout的页面中用。在要Layout的父页面中使用@RenderSection()方法。

    @RenderSecion()这个占位符表示:在这里会渲染页面里面的一个节(可以是html代码也可以是c#代码和Html的结合体)。
    @RenderSection(“scripts”, required: false)做一个补充说明,第一个参数指明:在子页面被渲染的节的名称,第二个参数:指定子页面这个节是否是必需的,如果指定了required:true;但是在子页面没有给这个名称的节的话,编译是通不过的。

    在这里插入图片描述
    对于 ASP.NET Razor 注释,请使用它开头 @ 并结束注释 @。 批注可以位于一行或多行上:

    在这里插入图片描述
    @HTML.RenderAction 简单用法
    ①@HTML.ActionLink(“ActionName”)
    调用页与当前页位于同一个控制器,可直接调用,显示对应的视图
    ②@Html.ActionLink(“actionName”,“controllerName”)
    第一个参数为视图名称,第二个参数为视图对应的controller
    ③@html.actionlink(“actionName”,“controllerName”,
    new{参数A=A,参数B=B})

    @RenderSection
    @RenderSection在母版页中占个位,然后让使此母版页的子页自己去呈现他们的section
    @section xxx {

  • 相关阅读:
    【驱动】USB驱动、USB Functionfs简单使用介绍
    生成模型的中Attention Mask说明
    漏洞深度分析|Apache MINA SSHD反序列化漏洞
    【LeetCode】878. 第 N 个神奇数字
    idea中mapper直接跳转到xml的插件
    tcp/ip:记一次完整的数据包传输过程
    四十四、​Fluent 收敛标准-质量和能量守恒
    C# StringBuilder 的使用
    linux服务器基本操作
    UE DTDataTable 插件说明, 运行中操作CSV文件。
  • 原文地址:https://blog.csdn.net/u013400314/article/details/127104376