Razor 语法 8个要点
2015-07-24 14:25
435 查看
在页面中使用@字符添加代码
@字符可用于内联表达,和代码块
<!-- Single statement blocks -->
@{ var total = 7; }
@{ var myMessage = "Hello World"; }
<!-- Inline expressions -->
<p>The value of your account is: @total
</p>
<p>The value of myMessage is: @myMessage</p>
<!-- Multi-statement block -->
@{
var greeting = "Welcome to our site!";
var weekDay = DateTime.Now.DayOfWeek;
var greetingMessage = greeting + " Today is: " + weekDay;
}
<p>The greeting is: @greetingMessage</p>
运行起来是这样的
![](file:///C:\Users\锦\AppData\Local\Temp\msohtmlclip1\01\clip_image001.jpg)
用大括号关闭代码块
一个代码块包括一句或者更多代码,并使用大括号结束
<!-- Single statement block. -->
@{ var theMonth = DateTime.Now.Month; }
<p>The numeric value of the current month: @theMonth</p>
<!-- Multi-statement block. -->
@{
var outsideTemp = 79;
var weatherMessage = "Hello, it is " + outsideTemp + " degrees.";
}
<p>Today's weather: @weatherMessage</p>
运行结果
![](file:///C:\Users\锦\AppData\Local\Temp\msohtmlclip1\01\clip_image002.jpg)
在每个代码块中使用分号结束每句代码
在每个代码块中,每一个完整的语句使用分号结束,内联表达不需要分号
<!-- Single-statement block -->
@{ var theMonth = DateTime.Now.Month; }
<!-- Multi-statement block -->
@{
var outsideTemp = 79;
var weatherMessage = "Hello, it is " + outsideTemp + " degrees.";
}
<!-- Inline expression, so no semicolon -->
<p>Today's weather: @weatherMessage</p>
使用变量保存值
你可以将值存入变量中,包括字符串,数字,日期等。你可以使用var关键字创建新变量。使用@将变量直接插入页码之中
<!-- Storing a string -->
@{ var welcomeMessage = "Welcome, new members!"; }
<p>@welcomeMessage</p>
<!-- Storing a date -->
@{ var year = DateTime.Now.Year; }
<!-- Displaying a variable -->
<p>Welcome to our new members who joined in @year!</p>
运行结果
![](file:///C:\Users\锦\AppData\Local\Temp\msohtmlclip1\01\clip_image003.jpg)
使用双引号结束文字字符串
一个字符串是被当作文本的一串字符组成。为了具体说明字符串可以使用双引号
@{ var myString = "This is a string literal"; }
如果你想显示的字符串中包含 \
”,在字符串前加上@可以将字符串一字不差的显示(C#中\有特殊含义)
<!-- Embedding a backslash in a string -->
@{ var myFilePath = @"C:\MyFolder\"; }
<p>The path is: @myFilePath</p>
嵌入双引号时,重复双引号
<!-- Embedding double quotation marks in a string -->
@{ var myQuote = @"The person said: ""Hello, today is Monday."""; }
<p>@myQuote</p>
这里是运行结果
![](file:///C:\Users\锦\AppData\Local\Temp\msohtmlclip1\01\clip_image004.png)
小记 @符号同时用来表示一字不差显示的字符串和代码
代码是大小写敏感的
在c#中,关键字(像是var,true,if)和变量名是大小写敏感的。接下来的代码创建了两个不同的变量
lastName,LastName
@{
var lastName = "Smith";
var LastName = "Jones";
}
如果你声明了一个变量
lastName="Smith"; 并且在页面中使用@LastName,将会因为没有找到LastName产生一个错误,
注意:在vb中不分大小写
大部分代码使用对象
一个对象代表一个可以编程的东西,例如页面,文本框,图片,网页请求,电子邮件信息等。对象有属性来描述它自己的特征,并可以通过读写修改--例如文本框有一个文本属性,一个请求对象有url属性。对象也有方法来描述它的行为。例如文件对象可以有一个保存方法,图片对象有一个旋转方法,email有一个发送方法
<table
border="1">
<tr>
<td>Requested URL</td>
<td>Relative Path</td>
<td>Full Path</td>
<td>HTTP Request Type</td>
</tr>
<tr>
<td>@Request.Url</td>
<td>@Request.FilePath</td>
<td>@Request.MapPath(Request.FilePath)</td>
<td>@Request.RequestType</td>
</tr>
</table>
![](file:///C:\Users\锦\AppData\Local\Temp\msohtmlclip1\01\clip_image005.png)
使用代码完成逻辑判断
动态网页的一个关键特性就是对于不同的情况采取不同方法。最常见的方法就像是if语句(else可选)
@{
var result = "";
if(IsPost)
{
result = "This page was posted using the Submit button.";
}
else
{
result = "This was the first request for this page.";
}
}
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form
method="POST"
action=""
>
<input
type="Submit"
name="Submit"
value="Submit"/>
<p>@result</p>
</form>
</body>
</html>
原网页http://www.asp.net/web-pages/overview/getting-started/introducing-razor-syntax-(c)
@字符可用于内联表达,和代码块
<!-- Single statement blocks -->
@{ var total = 7; }
@{ var myMessage = "Hello World"; }
<!-- Inline expressions -->
<p>The value of your account is: @total
</p>
<p>The value of myMessage is: @myMessage</p>
<!-- Multi-statement block -->
@{
var greeting = "Welcome to our site!";
var weekDay = DateTime.Now.DayOfWeek;
var greetingMessage = greeting + " Today is: " + weekDay;
}
<p>The greeting is: @greetingMessage</p>
运行起来是这样的
![](file:///C:\Users\锦\AppData\Local\Temp\msohtmlclip1\01\clip_image001.jpg)
用大括号关闭代码块
一个代码块包括一句或者更多代码,并使用大括号结束
<!-- Single statement block. -->
@{ var theMonth = DateTime.Now.Month; }
<p>The numeric value of the current month: @theMonth</p>
<!-- Multi-statement block. -->
@{
var outsideTemp = 79;
var weatherMessage = "Hello, it is " + outsideTemp + " degrees.";
}
<p>Today's weather: @weatherMessage</p>
运行结果
![](file:///C:\Users\锦\AppData\Local\Temp\msohtmlclip1\01\clip_image002.jpg)
在每个代码块中使用分号结束每句代码
在每个代码块中,每一个完整的语句使用分号结束,内联表达不需要分号
<!-- Single-statement block -->
@{ var theMonth = DateTime.Now.Month; }
<!-- Multi-statement block -->
@{
var outsideTemp = 79;
var weatherMessage = "Hello, it is " + outsideTemp + " degrees.";
}
<!-- Inline expression, so no semicolon -->
<p>Today's weather: @weatherMessage</p>
使用变量保存值
你可以将值存入变量中,包括字符串,数字,日期等。你可以使用var关键字创建新变量。使用@将变量直接插入页码之中
<!-- Storing a string -->
@{ var welcomeMessage = "Welcome, new members!"; }
<p>@welcomeMessage</p>
<!-- Storing a date -->
@{ var year = DateTime.Now.Year; }
<!-- Displaying a variable -->
<p>Welcome to our new members who joined in @year!</p>
运行结果
![](file:///C:\Users\锦\AppData\Local\Temp\msohtmlclip1\01\clip_image003.jpg)
使用双引号结束文字字符串
一个字符串是被当作文本的一串字符组成。为了具体说明字符串可以使用双引号
@{ var myString = "This is a string literal"; }
如果你想显示的字符串中包含 \
”,在字符串前加上@可以将字符串一字不差的显示(C#中\有特殊含义)
<!-- Embedding a backslash in a string -->
@{ var myFilePath = @"C:\MyFolder\"; }
<p>The path is: @myFilePath</p>
嵌入双引号时,重复双引号
<!-- Embedding double quotation marks in a string -->
@{ var myQuote = @"The person said: ""Hello, today is Monday."""; }
<p>@myQuote</p>
这里是运行结果
![](file:///C:\Users\锦\AppData\Local\Temp\msohtmlclip1\01\clip_image004.png)
小记 @符号同时用来表示一字不差显示的字符串和代码
代码是大小写敏感的
在c#中,关键字(像是var,true,if)和变量名是大小写敏感的。接下来的代码创建了两个不同的变量
lastName,LastName
@{
var lastName = "Smith";
var LastName = "Jones";
}
如果你声明了一个变量
lastName="Smith"; 并且在页面中使用@LastName,将会因为没有找到LastName产生一个错误,
注意:在vb中不分大小写
大部分代码使用对象
一个对象代表一个可以编程的东西,例如页面,文本框,图片,网页请求,电子邮件信息等。对象有属性来描述它自己的特征,并可以通过读写修改--例如文本框有一个文本属性,一个请求对象有url属性。对象也有方法来描述它的行为。例如文件对象可以有一个保存方法,图片对象有一个旋转方法,email有一个发送方法
<table
border="1">
<tr>
<td>Requested URL</td>
<td>Relative Path</td>
<td>Full Path</td>
<td>HTTP Request Type</td>
</tr>
<tr>
<td>@Request.Url</td>
<td>@Request.FilePath</td>
<td>@Request.MapPath(Request.FilePath)</td>
<td>@Request.RequestType</td>
</tr>
</table>
![](file:///C:\Users\锦\AppData\Local\Temp\msohtmlclip1\01\clip_image005.png)
使用代码完成逻辑判断
动态网页的一个关键特性就是对于不同的情况采取不同方法。最常见的方法就像是if语句(else可选)
@{
var result = "";
if(IsPost)
{
result = "This page was posted using the Submit button.";
}
else
{
result = "This was the first request for this page.";
}
}
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form
method="POST"
action=""
>
<input
type="Submit"
name="Submit"
value="Submit"/>
<p>@result</p>
</form>
</body>
</html>
原网页http://www.asp.net/web-pages/overview/getting-started/introducing-razor-syntax-(c)
相关文章推荐
- android技巧:快速重建system.img
- HD1002 A + B Problem II(大数简单的加法)
- hdu 5126 stars ( CDQ分治 + 树状数组)
- 推荐一款不错的GIF录制软件附带.NET源码
- java发送http的get、post请求
- [转载]excel怎么比较两组或两列数据的相同项和不同项
- YAHOO的CSS RESET
- FTP的上传和下载
- JS通过经纬度计算两个地方的距离
- 从Gartner 魔力象限看全球CRM众生相:SaaS继续领头
- 工作流引擎
- 对AOP切面的一些整理与理解
- 数据库系统原理
- 删除vector指定位置的元素
- MyBatis学习系列三:单表查询二
- EF中Expression<Func<T,bool>>动态查询怎么写啊
- GetComponentsInChildren
- 高精度加法
- 想成为PHP程序员正确的步骤
- 我不愿让你一个人孤独写代码 ——献给伟大的程序猿