欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解ASP.NET Razor 語法

 更新時間:2020年07月07日 09:50:57   作者:菜鳥教程  
這篇文章主要介紹了ASP.NET Razor 語法的相關(guān)資料,文中示例代碼非常詳細,幫助大家更好的理解和學習,感興趣的朋友可以了解下

Razor 同時支持 C# (C sharp) 和 VB (Visual Basic)。

主要的 Razor C# 語法規(guī)則

  • Razor 代碼塊包含在 @{ ... } 中
  • 內(nèi)聯(lián)表達式(變量和函數(shù))以 @ 開頭
  • 代碼語句用分號結(jié)束
  • 變量使用 var 關(guān)鍵字聲明
  • 字符串用引號括起來
  • C# 代碼區(qū)分大小寫
  • C# 文件的擴展名是 .cshtml

C# 實例

<!-- Single statement block -->
@{ var myMessage = "Hello World"; }

<!-- Inline expression or variable -->
<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 + " Here in Huston it is: " + weekDay;
}
<p>The greeting is: @greetingMessage</p>

輸出

The value of myMessage is: Hello World

The greeting is: Welcome to our site! Here in Huston it is: Saturday

主要的 Razor VB 語法規(guī)則

  • Razor 代碼塊包含在 @Code ... End Code 中
  • 內(nèi)聯(lián)表達式(變量和函數(shù))以 @ 開頭
  • 變量使用 Dim 關(guān)鍵字聲明
  • 字符串用引號括起來
  • VB 代碼不區(qū)分大小寫
  • VB 文件的擴展名是 .vbhtml

實例

<!-- Single statement block -->
@Code dim myMessage = "Hello World" End Code

<!-- Inline expression or variable -->
<p>The value of myMessage is: @myMessage</p>

<!-- Multi-statement block -->
@Code
dim greeting = "Welcome to our site!"
dim weekDay = DateTime.Now.DayOfWeek
dim greetingMessage = greeting & " Here in Huston it is: " & weekDay
End Code

<p>The greeting is: @greetingMessage</p>

輸出

The value of myMessage is: Hello World

The greeting is: Welcome to our site! Here in Huston it is: Saturday

它是如何工作的?

Razor 是一種將服務器代碼嵌入在網(wǎng)頁中的簡單的編程語法。

Razor 語法是基于 ASP.NET 框架,專門用于創(chuàng)建 Web 應用程序的部分 Microsoft.NET 框架。

Razor 語法支持所有 ASP.NET 的功能,但是使用的是一種簡化語法,對初學者而言更容易學習,對專家而言更有效率的。

Razor 網(wǎng)頁可以被描述成帶以下兩種類型內(nèi)容的 HTML 網(wǎng)頁: HTML 內(nèi)容和 Razor 代碼。

當服務器讀取頁面時,它首先運行 Razor 代碼,然后再發(fā)送 HTML 頁面到瀏覽器。在服務器上執(zhí)行的代碼能夠執(zhí)行一些在瀏覽器上不能完成的任務,比如,訪問服務器數(shù)據(jù)庫。服務器代碼能創(chuàng)建動態(tài)的 HTML 內(nèi)容,然后發(fā)送到瀏覽器。從瀏覽器上看,服務器代碼生成的 HTML 與靜態(tài)的 HTML 內(nèi)容沒有什么不同。

帶 Razor 語法的 ASP.NET 網(wǎng)頁有特殊的文件擴展名 cshtml(Razor C#)或者 vbhtml(Razor VB)。

使用對象

服務器編碼往往涉及到對象。

"Date" 對象是一個典型的內(nèi)置的 ASP.NET 對象,但對象也可以是自定義的,一個網(wǎng)頁,一個文本框,一個文件,一個數(shù)據(jù)庫記錄,等等。

對象有用于執(zhí)行的方法。一個數(shù)據(jù)庫記錄可能有一個 "Save" 方法,一個圖像對象可能有一個 "Rotate" 方法,一個電子郵件對象可能有一個 "Send" 方法,等等。
對象也有用于描述各自特點的屬性。一個數(shù)據(jù)庫記錄可能有 FirstName 和 LastName 屬性。

ASP.NET Date 對象有一個 Now 屬性(寫成 Date.Now),Now 屬性有一個 Day 屬性(寫成 Date.Now.Day)。下面實例演示了如何訪問 Date 對象的一些屬性:

<table border="1">
<tr>
<th width="100px">Name</th>
<td width="100px">Value</td>
</tr>
<tr>
<td>Day</td><td>@DateTime.Now.Day</td>
</tr>
<tr>
<td>Hour</td><td>@DateTime.Now.Hour</td>
</tr>
<tr>
<td>Minute</td><td>@DateTime.Now.Minute</td>
</tr>
<tr>
<td>Second</td><td>@DateTime.Now.Second</td>
</tr>
</td>
</table>

輸出

NAME value
Day 17
Hour 21
Minute 6
Second 38

If 和 Else條件

動態(tài)網(wǎng)頁的一個重要特點是,您可以根據(jù)條件決定做什么。

做到這一點的常用方法是使用 if ... else 語句:

@{
var txt = "";
if(DateTime.Now.Hour > 12)
{txt = "Good Evening";}
else
{txt = "Good Morning";}
}
<html>
<body>
<p>The message is @txt</p>
</body>
</html>

輸出

The message is Good Evening

讀取用戶輸入

動態(tài)網(wǎng)頁的另一個重要特點是,您可以讀取用戶輸入。

輸入是通過 Request[] 功能讀取的,并且傳送輸入數(shù)據(jù)是經(jīng)過 IsPost 條件判斷的:

@{
var totalMessage = "";
if(IsPost)
{
var num1 = Request["text1"];
var num2 = Request["text2"];
var total = num1.AsInt() + num2.AsInt();
totalMessage = "Total = " + total;
}
}
<html>
<body style="background-color: beige; font-family: Verdana, Arial;">
<form action="" method="post">
<p><label for="text1">First Number:</label><br>
<input type="text" name="text1" /></p>
<p><label for="text2">Second Number:</label><br>
<input type="text" name="text2" /></p>
<p><input type="submit" value=" Add " /></p>
</form>
<p>@totalMessage</p>
</body>
</html>

輸出

以上就是詳解ASP.NET Razor 語法的詳細內(nèi)容,更多關(guān)于ASP.NET Razor 語法的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解.NET數(shù)據(jù)庫連接池

    詳解.NET數(shù)據(jù)庫連接池

    我們了解的.NET數(shù)據(jù)庫連接池真的是全部嗎?本文詳細講解了.NET數(shù)據(jù)庫連接池,可以帶領(lǐng)大家了解.NET數(shù)據(jù)庫連接池,大家可以參考一下
    2021-08-08
  • asp.net 判斷數(shù)組是否存在某個值的方法

    asp.net 判斷數(shù)組是否存在某個值的方法

    asp.net 判斷數(shù)組是否存在某個值的兩種方法, 需要的朋友可以參考下。
    2010-07-07
  • asp.net提取多層嵌套json數(shù)據(jù)的方法

    asp.net提取多層嵌套json數(shù)據(jù)的方法

    這篇文章主要介紹了asp.net提取多層嵌套json數(shù)據(jù)的方法,結(jié)合實例形式較為詳細的分析了asp.net解析json格式數(shù)據(jù)的步驟與相關(guān)操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2016-06-06
  • .NET橋接模式講解

    .NET橋接模式講解

    這篇文章主要為大家詳細介紹了ASP.NET橋接模式的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-11-11
  • .NET?6開發(fā)TodoList應用之使用MediatR實現(xiàn)POST請求

    .NET?6開發(fā)TodoList應用之使用MediatR實現(xiàn)POST請求

    對于稍微正式的項目,.NET工程上習慣的實現(xiàn)是通過使用比較成熟的類庫框架,有效地對業(yè)務邏輯進行分類管理、消除冗余代碼,以達到業(yè)務邏輯職責清晰簡潔的目的。在這個階段我們經(jīng)常使用的兩個類庫分別是AutoMapper和MediatR。本文將為大家介紹MediatR如何實現(xiàn)POST請求
    2021-12-12
  • VS2015下OpenCV配置方法圖文教程

    VS2015下OpenCV配置方法圖文教程

    這篇文章主要為大家詳細介紹了VS2015下OpenCV配置方法圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • CodeFirst從零開始搭建Asp.Net Core2.0網(wǎng)站

    CodeFirst從零開始搭建Asp.Net Core2.0網(wǎng)站

    這篇文章主要為大家詳細介紹了CodeFirst從零開始搭建Asp.Net Core2.0網(wǎng)站的詳細過程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • Entity?Framework管理一對一實體關(guān)系

    Entity?Framework管理一對一實體關(guān)系

    本文詳細講解了Entity?Framework管理一對一實體關(guān)系的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-03-03
  • asp.net+sqlserver實現(xiàn)的簡單高效的權(quán)限設(shè)計示例

    asp.net+sqlserver實現(xiàn)的簡單高效的權(quán)限設(shè)計示例

    大部分系統(tǒng)都有權(quán)限系統(tǒng)。一般來說,它能管控人員對某個否頁面的訪問;對某些字段、控件可見或者不可見。對gridview中的數(shù)據(jù)是否可刪除、可添加、可新增等等。
    2010-04-04
  • vs2008 安裝失敗的總結(jié)與分享

    vs2008 安裝失敗的總結(jié)與分享

    今天系統(tǒng)是剛裝的,今兒個也不是第一次裝系統(tǒng),也不是第一次裝vs2008了,遇上vs2008安裝出錯倒是頭一回。
    2010-01-01

最新評論