Razor常用語(yǔ)法介紹及示例
@using
@using 指令用于向生成的視圖添加 C# using 指令:
@using System.IO @{ var dir = Directory.GetCurrentDirectory(); } <p>@dir</p>
@page
@page 指令具有不同的效果,具體取決于其所在文件的類(lèi)型。 指令:
在 .cshtml 文件中表示該文件是 Razor Page**。 有關(guān)詳細(xì)信息,請(qǐng)參閱自定義路由和 ASP.NET Core 中的 Razor 頁(yè)面介紹。
指定 Razor 組件應(yīng)直接處理請(qǐng)求。 有關(guān)詳細(xì)信息,請(qǐng)參閱 ASP.NET Core Blazor 路由。
@namespace
設(shè)置生成的 Razor 頁(yè)面、MVC 視圖或 Razor 組件的類(lèi)的命名空間。
@layout
@layout 指令指定 Razor 組件的布局。 布局組件用于避免代碼重復(fù)和不一致。
@inject
@inject 指令允許 Razor 頁(yè)面將服務(wù)從服務(wù)容器注入到視圖。
@implements
@implements 指令為生成的類(lèi)實(shí)現(xiàn)接口。
以下示例實(shí)現(xiàn) System.IDisposable,以便可以調(diào)用 Dispose 方法:
<h1>Example</h1> @functions { private bool _isDisposed; ... public void Dispose() => _isDisposed = true; }
@code
@code 塊允許 Razor 組件將 C# 成員(字段、屬性和方法)添加到組件中。
@code { // C# members (fields, properties, and methods) }
@attribute
@attribute 指令將給定的屬性添加到生成的頁(yè)或視圖的類(lèi)中。 以下示例添加 [Authorize] 屬性:
@attribute [Authorize]
注釋
@{ /* C# comment */ // Another C# comment } <!-- HTML comment -->
轉(zhuǎn)義
如果需要針對(duì)@轉(zhuǎn)義, 使用@@即可, 因?yàn)锧為razor的語(yǔ)法。
呈現(xiàn)HTML
@("<span>Hello World</span>") <span>Hello World</span>
try、catch、finally
與C#語(yǔ)法相似, 使用@前綴聲明即可。
{ throw new InvalidOperationException("You did something invalid."); } catch (Exception ex) { <p>The exception message: @ex.Message</p> } finally { <p>The finally statement.</p> }
循環(huán)語(yǔ)句for、foreach、while 和 dowhile
- @for
@for (var i = 0; i < people.Length; i++) { var person = people[i]; <p>Name: @person.Name</p> <p>Age: @person.Age</p> }
- @foreach
@foreach (var person in people) { <p>Name: @person.Name</p> <p>Age: @person.Age</p> }
- @while
@{ var i = 0; } @while (i < people.Length) { var person = people[i]; <p>Name: @person.Name</p> <p>Age: @person.Age</p> i++; }
- @do while
@{ var i = 0; } @do { var person = people[i]; <p>Name: @person.Name</p> <p>Age: @person.Age</p> i++; } while (i < people.Length);
條件語(yǔ)句 if、else if、else 和 switch
@if (value % 2 == 0) { <p>The value was even.</p> } @if (value % 2 == 0) { <p>The value was even.</p> } else if (value >= 1337) { <p>The value is large.</p> } else { <p>The value is odd and small.</p> } @switch (value) { case 1: <p>The value is 1!</p> break; case 1337: <p>Your number is 1337!</p> break; default: <p>Your number wasn't 1 or 1337.</p> break; }
到此這篇關(guān)于Razor常用語(yǔ)法介紹及示例的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
ASP.NET 2.0中的數(shù)據(jù)操作之八:使用兩個(gè)DropDownList過(guò)濾的主/從報(bào)表
本文主要介紹在ASP.NET 2.0中如何如何將DropDownList和另一個(gè)DropDownList控件關(guān)聯(lián),選擇產(chǎn)品分類(lèi)和具體的產(chǎn)品時(shí),使用DetailsView顯示產(chǎn)品的詳細(xì)信息。2016-05-05ASP.NET MVC4入門(mén)教程(七):給電影表和模型添加新字段
本文使用Entity Framework Code First來(lái)實(shí)現(xiàn)模型類(lèi)上的操作,使用代碼優(yōu)先的模式,從而使得直接修改代碼,數(shù)據(jù)庫(kù)也會(huì)做相應(yīng)的改變。2016-04-04.NET多種數(shù)據(jù)庫(kù)大數(shù)據(jù)批量插入、更新(支持SqlServer、MySql、PgSql和Oracle)
這篇文章介紹了.NET多種數(shù)據(jù)庫(kù)大數(shù)據(jù)批量插入、更新。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-11-11在ASP.NET 2.0中操作數(shù)據(jù)之二十六:排序自定義分頁(yè)數(shù)據(jù)
前面教程中我們實(shí)現(xiàn)了高效的自定義分頁(yè),但是只是一種固定排序方式。在本教程中,我們通過(guò)引入@sortExpression來(lái)擴(kuò)展存儲(chǔ)過(guò)程既實(shí)現(xiàn)自定義分頁(yè)又提供自定義排序的功能。2016-05-05NopCommerce架構(gòu)分析之(三)EntityFramework數(shù)據(jù)庫(kù)初試化及數(shù)據(jù)操作
本文介紹IStartupTask,該類(lèi)會(huì)在系統(tǒng)啟動(dòng)時(shí)執(zhí)行,IStartupTask調(diào)用IEfDataProvider進(jìn)行數(shù)據(jù)庫(kù)的初始化。2016-04-04在ASP.NET 2.0中操作數(shù)據(jù)之三:創(chuàng)建母版頁(yè)和站點(diǎn)導(dǎo)航
本文主要介紹在ASP.NET如何創(chuàng)建母版頁(yè)以及站點(diǎn)地圖等操作,母版頁(yè)的實(shí)現(xiàn)的功能有點(diǎn)類(lèi)似自定義用戶(hù)控件,可以實(shí)現(xiàn)網(wǎng)站頁(yè)面統(tǒng)一的設(shè)計(jì)和布局。2016-04-04在ASP.NET 2.0中操作數(shù)據(jù)之五十七:在分層架構(gòu)中緩存數(shù)據(jù)
上一篇文章我們介紹了ASP.NET 2.0中使用ObjectDataSource在視圖層緩存數(shù)據(jù),缺點(diǎn)是不言而喻的,為了達(dá)到低耦合,本文介紹如何在三層架構(gòu)中使用緩存技術(shù)來(lái)緩存數(shù)據(jù)。2016-05-05在ASP.NET 2.0中操作數(shù)據(jù)之二十五:大數(shù)據(jù)量時(shí)提高分頁(yè)的效率
上一篇我們介紹過(guò)利用GirdView控件內(nèi)置的分頁(yè)功能進(jìn)行分頁(yè),但是熟悉ASP.NET的人都知道,那不是真正意義上的分頁(yè),本文就帶著大家利用利用存儲(chǔ)過(guò)程創(chuàng)建高效的分頁(yè)。2016-05-05在ASP.NET 2.0中操作數(shù)據(jù)之五十:為GridView控件添加Checkbox
本文主要介紹ASP.NET 2.0中為GridView控件添加Checkbox復(fù)選框控件的方法,并實(shí)現(xiàn)全選功能。2016-05-05