• Razor模板引擎(C#版)语法


    1、简介:

    Razor 是一种标记语法,可以让您将基于服务器的代码(Visual Basic 和 C#)嵌入到网页中。

    基于服务器的代码可以在网页传送给浏览器时,创建动态 Web 内容。当一个网页被请求时,服务器在返回页面给浏览器之前先执行页面中的基于服务器的代码。通过服务器的运行,代码能执行复杂的任务,比如进入数据库。

    Razor 是基于 ASP.NET 的,是为创建 Web 应用程序而设计的。它具有传统 ASP.NET 的功能,但更容易使用并且更容易学习。

    2、原理:

    Razor 是一种将服务器代码嵌入在网页中的简单的编程语法。

    Razor 语法是基于 ASP.NET 框架,专门用于创建 Web 应用程序的部分 Microsoft.NET 框架。

    Razor 语法支持所有 ASP.NET 的功能,但是使用的是一种简化语法,对初学者而言更容易学习,对专家而言更有效率的。

    Razor 网页可以被描述成带以下两种类型内容的 HTML 网页: HTML 内容和 Razor 代码。

    当 服务器读取页面时,它首先运行 Razor 代码,然后再发送 HTML 页面到浏览器。在服务器上执行的代码能够执行一些在浏览器上不能完成的任务,比如,访问服务器数据库。服务器代码能创建动态的 HTML 内容,然后发送到浏览器。从浏览器上看,服务器代码生成的 HTML 与静态的 HTML 内容没有什么不同。

    3、语法规则:

    • Razor 代码块包含在 @{ ... } 中 。 (和asp的<% %>相似),注意代码块中除了C#代码,html也是允许的
    • 内联表达式(变量和函数)以 @ 开头 (html中引用变量、对象需要使用@引用)
    • 代码语句用分号结束
    • 变量使用 var 关键字声明 (类型推断)
    • 字符串用引号括起来
    • C# 代码区分大小写
    • C# 文件的扩展名是 .cshtml

    语法补充:

    1、if for  foreach while 都是代码块 ,用@if{} @for(){} 使用  ,或者放在代码块中使用 @{ if(){} }

    2、读取用户输入:Request[] ;数据转换: AsInt()、AsDecimal()等

    代码块中输出非html和非变量内容:<text>我是要输出的内容</text>  或: @:我是要输出的内容      (内容里也可以输出变量  @变量名)

    代码块中输出内容:同在html中  使用  @变量名(不需要冒号)

    在调用 返回IHtmlString类型的方法不需要“;”,也不需要在代码块中。如:@RenderPage() 、 @Html.Partial()等

     只有在代码块中{}使用C#代码需要“;”   类似@RenderPage("~/Views/Shared/PartialOne.cshtml", new {lxf= "小飞哥"})这样输出内容的方法后面不需要加“;”

    html中输出变量  如:@a    在@a前后如有内容时请加上括号: @(a)

    @RenderBody、@RenderSection、@RenderPage、Html.RenderPartial、Html.RenderAction的作用和区别

     

  • 相关阅读:
    点滴积累【JS】---JS小功能(onmousemove鼠标移动坐标接龙DIV)
    点滴积累【JS】---JS小功能(JS实现模仿微博发布效果)
    点滴积累【JS】---JS小功能(JS实现多功能缓冲运动框架)
    点滴积累【JS】---JS小功能(JS实现动态添加运动属性)
    什么是CGI、FastCGI、PHP-CGI、PHP-FPM、Spawn-FCGI?
    使用Mysql命令一次性备份多个数据库(所有数据库)
    一套设计模式教程
    HTTP认证方式
    利用CodeIgniter中的Email类发邮件
    【php】对PHPExcel一些简单的理解
  • 原文地址:https://www.cnblogs.com/lxf1117/p/3998179.html
Copyright © 2020-2023  润新知