zoukankan      html  css  js  c++  java
  • Asp.Net Core Mvc Razor之RazorPage

    在AspNetCore.Mvc.Razor命名空间中的RazorPage继承RazorPageBase,并定义的属性为:

    • HttpContext Context 表示当前请求执行的HttpContext

    RazorPageBase定义为抽象类,并继承了接口:IRazorPage

    IRazorPage接口定义属性如下:

    • ViewContent ViewContent 获取或设置渲染视图的视图上下文
    • IHtmlContent BodyContent 获取或设置正文内容
    • bool IsLayoutBeingRendered 获取或设置一个标志,该标志确定是否呈现此页面的布局
    • string Path 获取应用程序页面的相对路径
    • string Layout 获取或设置布局页面的路径
    • IDictionary<string, RenderAsyncDelegate> PreviousSectionWriters 获取或设置此页面可以呈现的部分
    • IDictionary<string, RenderAsyncDelegate> SectionWriters 获取此页面定义的部分

    定义的方法 如下:

    • Task ExecuteAsync(); 渲染页面并将输出写入Writer
    • void EnsureRenderedBodyOrSections(); 验证是否渲染了PreviousSectionWriters中定义的所有节,或者如果未定义节则渲染了正文

    RazorPageBase中除了继承IRazorPage中的属性,还有定义的属性如下:

    • DiagnosticSource DiagnosticSource 获取或设置用于检测页面执行情况的DiagnosticSource实例
    • HtmlEncoder HtmlEncoder 获取此RazorPage处理非IHtmlContent C#表达式时要使用的HtmlEncoder
    • virtual TextWriter Output 获取页面正在将输出写入的TextWriter
    • ITempDataDictionary TempData 从ViewContext获取ITempDataDictionary
    • virtual ClaimsPrincipal User 获取当前登录用户的ClaimsPrincipal
    • object ViewBag 获取动态视图数据字典

    可以在Razor页面中可以直接使用的上述定义的属性,其中RazorPage中的属性Context为ViewContent中的HttpContext
    因此在Razor页面中要获取一些信息时,可以直接使用上述属性进行处理。

  • 相关阅读:
    Java User Thread and Daemon Thread
    BFS 和 DFS
    fail-fast vs fail-safe iterator in Java
    通过先序遍历和中序遍历后的序列还原二叉树
    单例模式总结
    TCP性能陷阱
    数据库事务的四大特性和事务隔离级别
    深入理解Java虚拟机- 学习笔记
    字符串,引用变量与常量池
    深入理解Java虚拟机- 学习笔记
  • 原文地址:https://www.cnblogs.com/sesametech-netcore/p/11586095.html
Copyright © 2011-2022 走看看