w3school Razor学习笔记

2018/05/23 15:18
阅读数 42

ASP.NET Razor - 标记

什么是 Razor ?

Razor 不是编程语言。它是服务器端标记语言

Razor 是一种允许您向网页中嵌入基于服务器的代码(Visual Basic 和 C#)的标记语法。

当网页被写入浏览器时,基于服务器的代码能够创建动态内容。在网页加载时,服务器在向浏览器返回页面之前,会执行页面内的基于服务器代码。由于是在服务器上运行,这种代码能执行复杂的任务,比如访问数据库。

Razor 基于 ASP.NET,它为 web 应用程序的创建而设计。它拥有传统 ASP.NET 标记的能力,但更易使用,也更易学习。

C# 的主要 Razor 语法规则

  • Razor 代码封装于 @{ ... } 中
  • 行内表达式(变量和函数)以 @ 开头
  • 代码语句以分号结尾
  • 字符串由引号包围
  • C# 代码对大小写敏感
  • C# 文件的扩展名是 .cshtml(html页面使用razor服务器端标记语言,所以扩展名为cshtml)
  • C# 实例

    <!-- 单行代码块 -->
    @{ var myMessage =	"Hello World"; }
    
    <!-- 行内表达式或变量 -->
    <p>The value of myMessage is: @myMessage</p> 
    
    <!-- 多行语句代码块 -->
    @{
    var greeting = "Welcome to our site!";
    var weekDay = DateTime.Now.DayOfWeek;
    var greetingMessage = greeting + " Here in Huston it is: " + weekDay;
    }
    <p>The greeting is: @greetingMessage</p>

如何工作?

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

Razor 语法基于 ASP.NET 框架,该框架是微软的 .NET 框架特别为 web 应用程序开发而设计的组成部分。

Razor 语法赋予您所有 ASP.NET 的能力,但是使用了简化过的语法,如果您是初学者,则更容易学习,如果您是专家,则更有利于提高生产力。

Razor 网页可被描述为带有两种内容的 HTML 页面:HTML 内容和 Razor 代码。

当服务器读取这种页面后,在将 HTML 页面发送到浏览器之前,会首先运行 Razor 代码。这些在服务器上执行的代码能够完成浏览器中无法完成的任务,比如访问服务器数据库。服务器代码能够在页面被发送到浏览器之前创建动态的 HTML 内容。从浏览器来看的话,由服务器代码生成的 HTML 与静态 HTML 内容没有区别。

使用 Razor 语法的 ASP.NET 网页拥有特殊的文件扩展名 cshtml(使用 C# 的 Razor 语法)或者 vbhtml(使用 VB 的 Razor)。

转换数据类型

将一种数据类型转换为另一种有时很有用。

大多数常见的例子是将字符串输入转换为另一种类型,比如整数或日期。

作为一项规则,用户输入会成为字符串,即使用户输入的是数字。所以,数字输入值在用于计算之前必须被转换为数字。

下面是常用的转换方法列表:

方法 描述 实例
  • AsInt()
  • IsInt()
把字符串转换为整数。 if (myString.IsInt())
{myInt=myString.AsInt();}
  • AsFloat()
  • IsFloat()
把字符串转换为浮点数。 if (myString.IsFloat())
{myFloat=myString.AsFloat();}
  • AsDecimal()
  • IsDecimal()
把字符串转换为十进制数。 if (myString.IsDecimal())
{myDec=myString.AsDecimal();}
  • AsDateTime()
  • IsDateTime()
把字符串转换为 ASP.NET DateTime 类型 myString="10/10/2012";
myDate=myString.AsDateTime();
  • AsBool()
  • IsBool()
把字符串转换为逻辑值。 myString="True";
myBool=myString.AsBool();
ToString() 把任意数据类型转换为字符串。 myInt=1234;
myString=myInt.ToString();
展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部