Asp.Net Core Mvc Razor之RazorPage
在AspNetCore.Mvc.Razor命名空間中的RazorPage繼承RazorPageBase,并定義的屬性為:
HttpContext Context 表示當(dāng)前請求執(zhí)行的HttpContext
RazorPageBase定義為抽象類,并繼承了接口:IRazorPage
IRazorPage接口定義屬性如下:
ViewContent ViewContent 獲取或設(shè)置渲染視圖的視圖上下文
IHtmlContent BodyContent 獲取或設(shè)置正文內(nèi)容
bool IsLayoutBeingRendered 獲取或設(shè)置一個標(biāo)志,該標(biāo)志確定是否呈現(xiàn)此頁面的布局
string Path 獲取應(yīng)用程序頁面的相對路徑
string Layout 獲取或設(shè)置布局頁面的路徑
IDictionary?PreviousSectionWriters 獲取或設(shè)置此頁面可以呈現(xiàn)的部分
IDictionary?SectionWriters 獲取此頁面定義的部分
定義的方法 如下:
Task ExecuteAsync(); 渲染頁面并將輸出寫入Writer
void EnsureRenderedBodyOrSections(); 驗證是否渲染了PreviousSectionWriters中定義的所有節(jié),或者如果未定義節(jié)則渲染了正文
RazorPageBase中除了繼承IRazorPage中的屬性,還有定義的屬性如下:
DiagnosticSource DiagnosticSource 獲取或設(shè)置用于檢測頁面執(zhí)行情況的DiagnosticSource實例
HtmlEncoder HtmlEncoder 獲取此RazorPage處理非IHtmlContent C#表達式時要使用的HtmlEncoder
virtual TextWriter Output 獲取頁面正在將輸出寫入的TextWriter
ITempDataDictionary TempData 從ViewContext獲取ITempDataDictionary
virtual ClaimsPrincipal User 獲取當(dāng)前登錄用戶的ClaimsPrincipal
object ViewBag 獲取動態(tài)視圖數(shù)據(jù)字典
可以在Razor頁面中可以直接使用的上述定義的屬性,其中RazorPage中的屬性Context為ViewContent中的HttpContext 因此在Razor頁面中要獲取一些信息時,可以直接使用上述屬性進行處理。
總結(jié)
以上是生活随笔為你收集整理的Asp.Net Core Mvc Razor之RazorPage的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 与时俱进 | 博客现已运行在 .NET
- 下一篇: ASP.NET Core 3.0 gRP